Hallöchen,
ich habe folgendes Problem:
Und zwar erstelle ich zur Laufzeit Einträge in einem PopUpMenu...
Delphi-Quellcode:
for i:=0 to StringListe.Count-1 do
begin
NeuesMenuItem := TMenuItem.Create(self);
Inc(ItemCount);
NeuesMenuItem.Name := 'Komponente_'+IntToStr(i);
NeuesMenuItem.Caption := StringListe.Strings[i];
PopUpUnterMenue1.Add(NeuesMenuItem);
NeuesMenuItem.Tag:=ItemCount;
NeuesMenuItem.OnClick:=PopupItemClick;
end;
Das funktioniert soweit, allerdings schaffe ich es nicht, einer dieser Einträge ein SubMenu zuzuweisen. Ich habe es so versucht:
Delphi-Quellcode:
StringListe2:=TStringList.Create;
for i:=0 to StringListe.Count-2 do
begin
StringListe2.Clear; //Wird später erweitert, sollte jetzt nicht von Belang sein
StringListe2.Add('String1');
StringListe2.Add('String2');
StringListe2.Add('String3');
for x:=1 to StringListe2.Count-1 do
begin
NeuesMenuItem := TMenuItem.Create(TPopUpMenu(FindComponent('Komponente_'+IntToStr(i))));
Inc(ItemCount);
NeuesMenuItem.Name:='Komponente_'+IntToStr(i*100+x);
NeuesMenuItem.Caption:=StringListe2.Strings[x];
NeuesMenuItem.Tag:=ItemCount;
// TPopUpMenu(FindComponent('Komponente_'+IntToStr(i))).Items.Add('Komponente_'+IntToStr(i*100+x)); //Funktioniert nicht ;-)
NeuesMenuItem.OnClick:=PopUpItemClick;
end;
end;
StringListe2.Free;
Ich hab hier schon im Forum gesucht, aber nichts Sinnvolles finden können. Ich hab es mit FindComponent versucht und so und so und hin und her. In
OOP-Programmierung bin ich nicht so gut geschult
Vielen Dank für eure Hilfe!