AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren
Zurück Delphi-PRAXiS Programmierung allgemein GUI-Design mit VCL / FireMonkey / Common Controls Delphi ActionMainMenuBar + Items die ein PopupMenü haben sollen
Thema durchsuchen
Ansicht
Themen-Optionen

ActionMainMenuBar + Items die ein PopupMenü haben sollen

Ein Thema von Lun · begonnen am 12. Dez 2006 · letzter Beitrag vom 14. Dez 2006
Antwort Antwort
Benutzerbild von Lun
Lun

Registriert seit: 4. Feb 2006
122 Beiträge
 
Delphi 2005 Professional
 
#1

ActionMainMenuBar + Items die ein PopupMenü haben sollen

  Alt 12. Dez 2006, 12:49
Hi @ll ,

ich habe eine ActionMainMenuBar in der ich dynamisch einem Menüpunkt, Items hinzufüge. Diese Items haben alle eine Action, die über eine OnExecute Methode verfügt. In dieser OnExecute Methode wird ein Dokument des Items aufgerufen, das funktioniert soweit auch, aber ich möchte jetzt noch ein Popup Menü haben in dem ich auswählen kann "item entfernen". Das Problem was ich jetzt habe ist, dass egal ob ich die linke oder Rechte Maustaste auf einem ActionClientItem drücke wird logischerweise die OnExecute Methode ausgeführt.
"Meine linke Maustaste". Also meine Frage ist wie schaffe ich es das ich mein Popup Menü mit der Rechten Maustaste öffnen kann auf dem item.

Meine Überlegung:

Entweder in der OnExecute Methode abfragen durch welche Maustaste die OnExecute Methode ausgelöst wurde und je nach Maustaste eine bestimmt aktion ausführen lasse. Aber da es keine onMousedown funktion bei den Items gibt, weiß ich nicht wie ich das realisieren soll. Oder es muss bevor die Funktion OnExecute ausgeführt wird überprüft werden welche Maustaste gedrückt wurde, aber Action hat auch keine Funktion dafür.

Ich habe etwas von Mousehooks gelesen, aber ich weiß auch nicht ob dass das richtige ist oder mir dabei weiterhelfen kann?

Thx for Help

greetz Lun
  Mit Zitat antworten Zitat
Benutzerbild von Lun
Lun

Registriert seit: 4. Feb 2006
122 Beiträge
 
Delphi 2005 Professional
 
#2

Re: ActionMainMenuBar + Items die ein PopupMenü haben solle

  Alt 13. Dez 2006, 14:40
*push it*

Ich hoffe das ist nach 24 h legitim. Ich habe es jetzt anders gebastelt, wenn es so nicht laufen will. Ich rufe jetzt in der OnExecute der angelegte items ein Popupmenü auf mit öffnen und löschen, die jeweils beide ihre Funktionalität in ihren OnExecute Methoden habe mit der dazugehörigen Action. Hört sich komplizierter an als es ist.


ActionMainMenuBar
|
|
Datei
| |
| |--Datei Item1--> OnExecute ---> Popup--->öffnen --> ActionöffneItem
| --->löschen --> ActionlöscheItem
|
|--Datei Item2 ""
|
|--Datei Item3 ""

Problem: Wenn sich das Popup öffnet schließt sich mein Datei ItemArm, sprich ich sehe die Ausgangsposition von der ActionMainMenuBar was jetzt sehr blöde ist, da man dann nicht mehr genau weiß auf welches Datei Item sich das öffnen oder das löschen bezieht.

Wie bekomme ich es hin das sich das Datei Menü erst schließt, nachdem ich eines der beiden Optionen aus dem Popup Menü ausgewählt habe?

greetz Lun
  Mit Zitat antworten Zitat
Benutzerbild von Lun
Lun

Registriert seit: 4. Feb 2006
122 Beiträge
 
Delphi 2005 Professional
 
#3

Re: ActionMainMenuBar + Items die ein PopupMenü haben solle

  Alt 14. Dez 2006, 11:27
Hi @ll,

habe das Problem gelöst, und wollte noch die Antwort dazu geben, falls es da draußen einen gibt, der das gleiche Problem hat.

Also habe jetzt den Usel mit dem Popup Menü sein gelassen, und habe jetzt jedem Datei Item, zwei Unterpunkte (items) hinzugefügt.
Öffnen/Löschen.

Dabei gebe ich den Inhalt des Datei Items dem Item Öffnen oder Löschen mit, und führe über die jeweilige Action die Aktion aus.

Warum nicht gleich so

greetz Lun
  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 22:54 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