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
Antwort Antwort
Benutzerbild von Poseidon
Poseidon

Registriert seit: 8. Jul 2008
113 Beiträge
 
Delphi 2005 Personal
 
#1

Listbox in Popup

  Alt 8. Jul 2008, 12:43
Hallo Delphianer,

ich möchte das die Einträge in einer listbox in ein Untermenü
des popup erscheinen. Also:
Meine Listbox hat (z.B.) 5 Einträge (e1,e2,e3,e4,e5), im popup habe ich das Item
listbox. Im Untermenu sollen dei Listbox Eintäge stehen. Hoffe ihr wisst was ich meine.

danke im voraus

mfg Poseidon
Im Zweifelsfall immer das Richtige tun
  Mit Zitat antworten Zitat
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
Benutzerbild von Poseidon
Poseidon

Registriert seit: 8. Jul 2008
113 Beiträge
 
Delphi 2005 Personal
 
#3

Re: Listbox in Popup

  Alt 8. Jul 2008, 13:42
Super, Danke
Im Zweifelsfall immer das Richtige tun
  Mit Zitat antworten Zitat
Ajin

Registriert seit: 23. Feb 2006
Ort: Mons
252 Beiträge
 
Delphi 2010 Professional
 
#4

Re: Listbox in Popup

  Alt 1. Okt 2008, 16:16
Bei jedem Rechtsklick wird immer ein weiterer Hauptmenue Eintrag hinzugefügt, egal ob es schon existiert oder nicht.
  Mit Zitat antworten Zitat
Benutzerbild von Luckie
Luckie

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

Re: Listbox in Popup

  Alt 1. Okt 2008, 16:26
Zitat von Ajin:
Bei jedem Rechtsklick wird immer ein weiterer Hauptmenue Eintrag hinzugefügt, egal ob es schon existiert oder nicht.
Äh, ja und? Was willst du uns jetzt mit deiner Festellung sagen?
Michael
  Mit Zitat antworten Zitat
Ajin

Registriert seit: 23. Feb 2006
Ort: Mons
252 Beiträge
 
Delphi 2010 Professional
 
#6

Re: Listbox in Popup

  Alt 1. Okt 2008, 16:49
Na ich würde mit:

Delphi-Quellcode:
if Listbox1.Items.Count = 0 then
    begin
      PopItem := TMenuItem.Create(Fmain); // Hauptmenüeintrag erzeugen
      PopItem.Caption := 'Keine Einträge vorhanden'; // Beschriftung
      if popup.items.Count = 0 then Popup.Items.Add(PopItem);
    end
    else
    begin
     PopItem := TMenuItem.Create(Fmain); // Hauptmenüeintrag erzeugen
     PopItem.Caption := 'zeige Details für'; // Beschriftung
     if popup.items.Count = 1 then Popup.Items.Add(PopItem);
    end;
sicherstellen dass nicht unendlich viele Hauptmenueeinträge erzeugt werden können.
  Mit Zitat antworten Zitat
Benutzerbild von Luckie
Luckie

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

Re: Listbox in Popup

  Alt 1. Okt 2008, 17:41
Das war ja nur ein Beispielcode und nicht mehr.
Michael
  Mit Zitat antworten Zitat
Ajin

Registriert seit: 23. Feb 2006
Ort: Mons
252 Beiträge
 
Delphi 2010 Professional
 
#8

Re: Listbox in Popup

  Alt 2. Okt 2008, 08:43
Heeee das sollte ja auch kein Vorwurf sein

Ohne deine Beispiele hätte ich deutlich mehr graue Haare!

  Mit Zitat antworten Zitat
Antwort Antwort


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 08:11 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