AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren
Zurück Delphi-PRAXiS Programmierung allgemein GUI-Design mit VCL / FireMonkey / Common Controls Delphi Wie vielter Eintrag in einem PopupMenu ausgewählt?
Thema durchsuchen
Ansicht
Themen-Optionen

Wie vielter Eintrag in einem PopupMenu ausgewählt?

Ein Thema von Sharky · begonnen am 20. Okt 2003 · letzter Beitrag vom 12. Sep 2006
Antwort Antwort
Benutzerbild von Sharky
Sharky

Registriert seit: 29. Mai 2002
Ort: Frankfurt
8.251 Beiträge
 
Delphi 2006 Professional
 
#1

Wie vielter Eintrag in einem PopupMenu ausgewählt?

  Alt 20. Okt 2003, 09:58
Hai,

kann ich ermitteln auf den wievielten Eintrag in einem PopUp-Menü geklickt wurde?
Meine Versuche mit IndexOf oder MenuIndex haben mir als ergebniss immer -1 zurückgegeben.
Ich dann das natürlich über den Umweg der Tag Eigenschaft machen. Aber so wäre es mir lieber.
Stephan B.
"Lasst den Gänsen ihre Füßchen"
  Mit Zitat antworten Zitat
Benutzerbild von sakura
sakura

Registriert seit: 10. Jun 2002
Ort: München
11.412 Beiträge
 
Delphi 11 Alexandria
 
#2

Re: Wie vielter Eintrag in einem PopupMenu ausgewählt?

  Alt 20. Okt 2003, 10:04
Hm, ich mache es so (ohne Probleme):

Delphi-Quellcode:
procedure TfrmMain.MenuItemsClick(Sender: TObject);
begin
  ShowMessage(IntToStr(PopupMenu1.Items.IndexOf(TMenuItem(Sender))));
end;
......
Daniel W.
Ich bin nicht zurück, ich tue nur so
  Mit Zitat antworten Zitat
Benutzerbild von Sharky
Sharky

Registriert seit: 29. Mai 2002
Ort: Frankfurt
8.251 Beiträge
 
Delphi 2006 Professional
 
#3

Re: Wie vielter Eintrag in einem PopupMenu ausgewählt?

  Alt 20. Okt 2003, 10:09


(TMenuItem(Sender)) da war der Fehler bei mir.

Danke dir oh Du DP-Katze (SchüsselMitMilchRüberschiebe)
Stephan B.
"Lasst den Gänsen ihre Füßchen"
  Mit Zitat antworten Zitat
DashRendar

Registriert seit: 10. Sep 2006
9 Beiträge
 
Delphi 2005 Personal
 
#4

Re: Wie vielter Eintrag in einem PopupMenu ausgewählt?

  Alt 12. Sep 2006, 13:46
Das Problem habe ich auch grade mit meinem Popup-Radio-Menu. Aber so funktioniert das nicht bei mir, weil ich mich zu doof anstelle. Bei Items verlangt Delphi immer einen Index. Aber welchen Index muss ich da wählen? Ich habe ja mehr als einen Eintrag in meinem Menu "Race1".
So siehts bei mir aus:

Delphi-Quellcode:
procedure TForm3.Race1Click(Sender: TObject);
begin
(Sender as TMenuItem).Checked := true;
ShowMessage(IntToStr(Race1.Items.IndexOf(TMenuItem(Sender))));
end;
Wie geht's richtig

Gruß,
DashRendar
  Mit Zitat antworten Zitat
Hawkeye219

Registriert seit: 18. Feb 2006
Ort: Stolberg
2.227 Beiträge
 
Delphi 2010 Professional
 
#5

Re: Wie vielter Eintrag in einem PopupMenu ausgewählt?

  Alt 12. Sep 2006, 14:00
Hallo DashRendar,

In der Eigenschaft Delphi-Referenz durchsuchenTMenuItem.MenuIndex findest du den Index des Menüeintrags innerhalb seines übergeordneten Menüs.

Gruß Hawkeye
  Mit Zitat antworten Zitat
DashRendar

Registriert seit: 10. Sep 2006
9 Beiträge
 
Delphi 2005 Personal
 
#6

Re: Wie vielter Eintrag in einem PopupMenu ausgewählt?

  Alt 12. Sep 2006, 14:17
Damit habe ich es schon probiert bekomme aber immer nur den Menuindex von meinem MainMenu (hier: 1) zurueck. Egal ob ich

Delphi-Quellcode:
procedure TForm3.Race1Click(Sender: TObject);
begin
(Sender as TMenuItem).Checked := true;
ShowMessage(InttoStr((Sender as TMenuItem).MenuIndex));
end;
oder so mache

Delphi-Quellcode:
procedure TForm3.Race1Click(Sender: TObject);
begin
(Sender as TMenuItem).Checked := true;
ShowMessage(InttoStr(Race1.MenuIndex));
end;
Bei letzterem leuchtet mir das auch ein, weil ja nicht auf das untergeordnete Menu zugreife. Aber wie greift man darauf zu? So das einem der Index-Wert für den Pop-Up Eintrag angezeigt und nicht der für den Mainmenuindex?

*verzweifel*
  Mit Zitat antworten Zitat
Hawkeye219

Registriert seit: 18. Feb 2006
Ort: Stolberg
2.227 Beiträge
 
Delphi 2010 Professional
 
#7

Re: Wie vielter Eintrag in einem PopupMenu ausgewählt?

  Alt 12. Sep 2006, 15:18
Du verwirrst mich. In Beitrag #4 sprichst du von einem PopupMenü, nun vom MainMenu. Aufgrund deiner Angaben vermute ich, daß "Race1" der erste Menüeintrag des Hauptmenüs ist, und das Ereignis für alle Untereinträge von "Race1" ausgelöst werden soll. Offenbar hast du die Behandlungsroutine "Race1Click" mit dem Hauptmenüeintrag verknüpft, du mußt die Routine aber mit allen Untereinträgen von "Race1" verbinden.

Gruß Hawkeye
  Mit Zitat antworten Zitat
DashRendar

Registriert seit: 10. Sep 2006
9 Beiträge
 
Delphi 2005 Personal
 
#8

Re: Wie vielter Eintrag in einem PopupMenu ausgewählt?

  Alt 12. Sep 2006, 16:05
Juhu . Genau das war mein Fehler, leuchtet mir nun ein wieso es vorher nicht geklappt hat.
Vielen Dank nochmal für die Geduld!

Gruß,
DashRendar
  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 01:33 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