AGB  ·  Datenschutz  ·  Impressum  







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

Listbox in Popup

Ein Thema von Poseidon · begonnen am 8. Jul 2008 · letzter Beitrag vom 2. Okt 2008
 
Benutzerbild von Luckie
Luckie

Registriert seit: 29. Mai 2002
37.621 Beiträge
 
Delphi 2006 Professional
 
#2

Re: Listbox in Popup

  Alt 8. Jul 2008, 13:01
Geht so:
Delphi-Quellcode:
//
// Klick-Ereignis für dynamische Popmenüeinträge
//
procedure TForm1.PopUpItemClick(Sender: TObject);
var
  PopItem: TMenuItem;
begin
  // Sicherstellen dass der Sender vom richtigen Typ ist
  PopItem := (Sender as TMenuItem);
  // nur wenn Zuwesusng erfolgreich
  if Assigned(PopItem) then
  begin
    ShowMessage(Format('Popupmenüitem Nr. %d wurde angeklickt', [PopItem.Tag]));
  end;
end;

procedure TForm1.PopupMenu1Popup(Sender: TObject);
var
  PopItem: TMenuItem;
  LBItem: TMenuItem;
  i: Integer;
begin
    PopItem := TMenuItem.Create(Form1); // Hauptmenüeintrag erzeugen
    PopItem.Caption := 'Litsbox Items'; // Beschriftung
    PopupMenu1.Items.Add(PopItem); // an Popupmenü anhängen
    for i := 0 to ListBox1.Items.Count - 1 do
    begin
      LBItem := TMenuItem.Create(Form1); // Menüitem erzeugen
      LBItem.Caption := Listbox1.Items[i]; // Beschriftung
      LBItem.Tag := i; // Eigenschaft Tag setzen zur späteren Unterscheidung im OnClick Ereignis
      LBItem.OnClick := PopUpItemClick; // Klick-Ereignis zuweisen
      PopItem.Add(LBItem); // an Hauptmenüeintrag anhängen
    end;
end;
Ich habe es ausführlich kommentiert. Sollte so verständlich sein.
Michael
Ein Teil meines Codes würde euch verunsichern.
  Mit Zitat antworten Zitat
 


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 07:52 Uhr.
Powered by vBulletin® Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024-2025 by Thomas Breitkreuz