AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren
Zurück Delphi-PRAXiS Programmierung allgemein GUI-Design mit VCL / FireMonkey / Common Controls Delphi Action gleichzeitig bei PopupMenu und MainMenu
Thema durchsuchen
Ansicht
Themen-Optionen

Action gleichzeitig bei PopupMenu und MainMenu

Ein Thema von alcaeus · begonnen am 27. Apr 2004 · letzter Beitrag vom 27. Apr 2004
Antwort Antwort
Benutzerbild von alcaeus
alcaeus

Registriert seit: 11. Aug 2003
Ort: München
6.537 Beiträge
 
#1

Action gleichzeitig bei PopupMenu und MainMenu

  Alt 27. Apr 2004, 19:07
Ich verwende in meiner Anwendung ein Menü, in dem es eine Option "Kundendaten ansehen" gibt. Dasselbe gibt es in einem Popupmenü, das an eine TListView gehängt ist. Beide MenuItems referenzieren die gleiche Action. Frage: Wie kann ich herausfinden, von welchem Menü (MainMenu oder PopupMenu) die Action gestartet wurde? Die Name-Eigenschaft des Sender-Parameters gibt mir nur den Namen der Action zurück
Andreas B.
Die Mutter der Dummen ist immer schwanger.
Ein Portal für Informatik-Studenten: www.infler.de
  Mit Zitat antworten Zitat
Benutzerbild von himitsu
himitsu

Registriert seit: 11. Okt 2003
Ort: Elbflorenz
44.071 Beiträge
 
Delphi 12 Athens
 
#2

Re: Action gleichzeitig bei PopupMenu und MainMenu

  Alt 27. Apr 2004, 19:10
Delphi-Quellcode:
Procedure OnClick...(Sender: TObjekt);
Begin
  If Sender = MainMenu1Item Then {vom Memü} Else {das andere}

  If Sender = PopupMenu1Item Then {ebenfalls das Andere}
End;
Neuste Erkenntnis:
Seit Pos einen dritten Parameter hat,
wird PoSex im Delphi viel seltener praktiziert.
  Mit Zitat antworten Zitat
Benutzerbild von alcaeus
alcaeus

Registriert seit: 11. Aug 2003
Ort: München
6.537 Beiträge
 
#3

Re: Action gleichzeitig bei PopupMenu und MainMenu

  Alt 27. Apr 2004, 19:11
Ich zitiere mich mal selbst:
Zitat von alcaeus:
Beide MenuItems referenzieren die gleiche Action.
Das sollte bedeuten dass beide MenuItems im Endeffekt die gleiche Routine aufrufen. Daher kommt ja auch das Problem, da ich wissen muss ob das ganze von der ListView oder vom MainMenu gestartet wurde, und ich will meinen Code nicht unnötig lang machen, indem ich noch OnClick-Routinen hinzufüge
Andreas B.
Die Mutter der Dummen ist immer schwanger.
Ein Portal für Informatik-Studenten: www.infler.de
  Mit Zitat antworten Zitat
Benutzerbild von himitsu
himitsu

Registriert seit: 11. Okt 2003
Ort: Elbflorenz
44.071 Beiträge
 
Delphi 12 Athens
 
#4

Re: Action gleichzeitig bei PopupMenu und MainMenu

  Alt 27. Apr 2004, 19:16
Ja, hatte es erst falsch verschtanden.

siehe oben, oder so:
Delphi-Quellcode:
Procedure TForm1.gfdgfd1Click(Sender: TObject);
  Begin
    If TMenuItem(Sender).Parent is TMainMenu Then ...
  End;
[EDIT]
Notfalls moßt do noch ein paar Ebenen höher gehen (wenn es sich z.B. um ein Untermenü in einem Untermenü handelt)
Delphi-Quellcode:
Procedure TForm1.gfdgfd1Click(Sender: TObject);
  Begin
    If TMenuItem(Sender).Parent.Parent... is TMainMenu Then ...
  End;

Oder du gibst einfach der Eigenschaft Tag der MenuItem's im Menü einen anderen Wert, als denen im PopupMenü
Delphi-Quellcode:
Procedure TForm1.gfdgfd1Click(Sender: TObject);
  Begin
    If Sender.Tag = 1 Then ...
  End;
Neuste Erkenntnis:
Seit Pos einen dritten Parameter hat,
wird PoSex im Delphi viel seltener praktiziert.
  Mit Zitat antworten Zitat
Benutzerbild von alcaeus
alcaeus

Registriert seit: 11. Aug 2003
Ort: München
6.537 Beiträge
 
#5

Re: Action gleichzeitig bei PopupMenu und MainMenu

  Alt 27. Apr 2004, 19:19
Ok, danke, ich werde mir mal deinen Lösungsweg merken, aber wenn jemand eine andere Methode OHNE zusätzliche OnClick-Handler kennt, wäre ich sehr dankbar, ich verliere jetzt schon fast den Überblick...
Andreas B.
Die Mutter der Dummen ist immer schwanger.
Ein Portal für Informatik-Studenten: www.infler.de
  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 00:16 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