Einzelnen Beitrag anzeigen

Grolle

Registriert seit: 5. Nov 2004
Ort: Coesfeld
1.268 Beiträge
 
Delphi 2010 Professional
 
#1

Problem mit dynamischem PopUp Menu

  Alt 10. Okt 2006, 16:45
Hallo,
ich erstelle aus einem Treeview ein PopUpMenÜ:
Delphi-Quellcode:
  if not Assigned(Node) then
    begin
      Temp := AdvTreeComboBox1.Treeview.Items[0];
      while Assigned(Temp) do
        begin
          Item := TMenuItem.Create(Self);
          Item.Caption := Temp.Text;
          Item.OnClick := MenuItemClick;
          PopupMenu1.Items.Add(Item);
          if Temp.Count > 0 then AddMenu(Temp, Item);
          Temp := Temp.GetNextSibling;
        end;
    end
  else
    begin
      Temp := Node.GetFirstChild;
      while Assigned(Temp) do
        begin
          Item := TMenuItem.Create(Self);
          Item.Caption := Temp.Text;
          Item.OnClick := MenuItemClick;
          Menu.Add(Item);
          if Temp.Count > 0 then AddMenu(Temp, Item);
          Temp := Temp.GetNextSibling;
        end;
    end;

und:

procedure TForm1.MenuItemClick(sender : TObject);
var
s : string;
begin
  with Sender as TMenuItem do
    begin
      s := caption;
    end;
    ShowMessage(s);
end;
Leider klappt das OnClick-Ereignis im Menü nicht so wie es soll. Schon im der oberen Ebene
wird die Mesage beim MouseOver angezeigt?!?
Viele Grüße...

  Mit Zitat antworten Zitat