AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren
Thema durchsuchen
Ansicht
Themen-Optionen

Einträge im Untermenü zur Laufzeit erzeugen

Ein Thema von Tpercon · begonnen am 22. Jun 2002 · letzter Beitrag vom 12. Jun 2004
Antwort Antwort
Seite 1 von 2  1 2      
Tpercon

Registriert seit: 7. Jun 2002
638 Beiträge
 
Delphi 5 Professional
 
#1

Einträge im Untermenü zur Laufzeit erzeugen

  Alt 22. Jun 2002, 18:19
Ich möchte in einem Menüeintrag ein Untermenü zur Laufzeit erstellen. Die Beschriftung der Einträge des Untermenüs sollen aus einer Ini- Datei geladen werden.
Wie erzeuge ich die Einträge im Untermenü eines Menüeintrages?
  Mit Zitat antworten Zitat
Benutzerbild von MrSpock
MrSpock
(Co-Admin)

Registriert seit: 7. Jun 2002
Ort: Owingen
5.865 Beiträge
 
Delphi 2010 Professional
 
#2
  Alt 22. Jun 2002, 19:45
Hallo TPercon,

du mußt ein neues TMenuItem erstellen und dem Menuepunkt, zu dem er das Untermenue bilden soll mit Add hinzufügen:

Code:
   NewItem := TMenuItem.Create(Self);
   NewItem.Caption := Ini.ReadString('Menus', 'Eintrag1','-');
   AltesMenu.Add(NewItem);
Albert
Live long and prosper


MrSpock
  Mit Zitat antworten Zitat
Tpercon

Registriert seit: 7. Jun 2002
638 Beiträge
 
Delphi 5 Professional
 
#3
  Alt 22. Jun 2002, 20:22
Danke MrSpock!
Es war wohl wieder viel zu einfach, um selbst drauf zu kommen.

Gruß
  Mit Zitat antworten Zitat
EvilDragon

Registriert seit: 15. Sep 2003
Ort: Berlin
143 Beiträge
 
Delphi 7 Enterprise
 
#4

Re: Einträge im Untermenü zur Laufzeit erzeugen

  Alt 12. Jun 2004, 11:50
hab nach diesem beispiel alles gemacht, klappt auch, nur wie bekomme ich es jetzt hin, das beim klick auf eins der erstellten untermenüs etwas ausgeführt wird??

Delphi-Quellcode:
  findfirst(ExtractFilePath(ParamStr(0))+'skins/'+'*.ini',faAnyFile-faDirectory,F);
  repeat
    if not ((f.name = '.') or (f.name = '..')) then
    begin
      Delete(f.Name, Length(f.Name)-3, 4);
      NewItem := TMenuItem.Create(Self);
      NewItem.Caption := (f.Name);
      Skins2.Add(NewItem);
    end;
  until findnext(F) <> 0;
  ini_skin := TiniFile.Create(ExtractFilePath(ParamStr(0))+'skins/'+skinname);
  try
www.codedragon.de check this out!
  Mit Zitat antworten Zitat
Muetze1
(Gast)

n/a Beiträge
 
#5

Re: Einträge im Untermenü zur Laufzeit erzeugen

  Alt 12. Jun 2004, 13:42
Moin!

Delphi-Quellcode:
  findfirst(ExtractFilePath(ParamStr(0))+'skins/'+'*.ini',faAnyFile-faDirectory,F);
  repeat
    if not ((f.name = '.') or (f.name = '..')) then
    begin
      Delete(f.Name, Length(f.Name)-3, 4);
      NewItem := TMenuItem.Create(Self);
      NewItem.Caption := (f.Name);
      NewItem.OnClick := DieOnClickDieDuWillst; // <---
      Skins2.Add(NewItem);
    end;
  until findnext(F) <> 0;
  ini_skin := TiniFile.Create(ExtractFilePath(ParamStr(0))+'skins/'+skinname);
  try
MfG
Muetze1
  Mit Zitat antworten Zitat
EvilDragon

Registriert seit: 15. Sep 2003
Ort: Berlin
143 Beiträge
 
Delphi 7 Enterprise
 
#6

Re: Einträge im Untermenü zur Laufzeit erzeugen

  Alt 12. Jun 2004, 14:29
onklick hab ich mir schon gedacht.. muss ich dann eine procedur/function coden, auf die das onklick verweist???
www.codedragon.de check this out!
  Mit Zitat antworten Zitat
StefanDP

Registriert seit: 11. Apr 2004
294 Beiträge
 
#7

Re: Einträge im Untermenü zur Laufzeit erzeugen

  Alt 12. Jun 2004, 15:07
Zitat von EvilDragon:
onklick hab ich mir schon gedacht.. muss ich dann eine procedur/function coden, auf die das onklick verweist???
genau! ungefähr so:
Delphi-Quellcode:
procedure TForm1.Geklickt(Sender: TObject); // edit: Muss TForm1... sein
begin
...
end;

...
NeuesMenuItem.OnClick := Geklickt;
...
  Mit Zitat antworten Zitat
EvilDragon

Registriert seit: 15. Sep 2003
Ort: Berlin
143 Beiträge
 
Delphi 7 Enterprise
 
#8

Re: Einträge im Untermenü zur Laufzeit erzeugen

  Alt 12. Jun 2004, 15:26
ich bekomme es net hin, bin auch grad das forum durch und die hilfe aber nichts....

hat vielleicht jemand ein beispiel....ambesent halt kurtz und kanp wie s in der unit auszudehen hat, voral das mit der eigene procedur....

danke in voraus schon mal
www.codedragon.de check this out!
  Mit Zitat antworten Zitat
StefanDP

Registriert seit: 11. Apr 2004
294 Beiträge
 
#9

Re: Einträge im Untermenü zur Laufzeit erzeugen

  Alt 12. Jun 2004, 15:34
Ein funktionierendes Beispiel im Anhang
Angehängte Dateien
Dateityp: rar menuitem.rar (3,0 KB, 29x aufgerufen)
  Mit Zitat antworten Zitat
EvilDragon

Registriert seit: 15. Sep 2003
Ort: Berlin
143 Beiträge
 
Delphi 7 Enterprise
 
#10

Re: Einträge im Untermenü zur Laufzeit erzeugen

  Alt 12. Jun 2004, 15:42
DANKE, genau so wat braucht ich
klappt einwandfrei
www.codedragon.de check this out!
  Mit Zitat antworten Zitat
Antwort Antwort
Seite 1 von 2  1 2      


Forumregeln

Es ist dir nicht erlaubt, neue Themen zu verfassen.
Es ist dir nicht erlaubt, auf Beiträge zu antworten.
Es ist dir nicht erlaubt, Anhänge hochzuladen.
Es ist dir nicht erlaubt, deine Beiträge zu bearbeiten.

BB-Code ist an.
Smileys sind an.
[IMG] Code ist an.
HTML-Code ist aus.
Trackbacks are an
Pingbacks are an
Refbacks are aus

Gehe zu:

Impressum · AGB · Datenschutz · Nach oben
Alle Zeitangaben in WEZ +1. Es ist jetzt 10:50 Uhr.
Powered by vBulletin® Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024 by Thomas Breitkreuz