Dies ist die alte 4D Dokumentations-Website. Die neue und aktualisierte Dokumentation finden Sie unter developer.4d.com

Home

 
4D v20 R7
Dynamic pop up menu

Dynamic pop up menu 


 

Dynamic pop up menu ( Menü {; Standard {; xKoord ; yKoord}} ) -> Funktionsergebnis 
Parameter Typ   Beschreibung
Menü  MenüRef in Menüreferenz
Standard  String in Parameter des standardmäßig ausgewählten Eintrags
xKoord  Lange Ganzzahl in X Koordinate der oberen linken Ecke
yKoord  Lange Ganzzahl in Y Koordinate der oberen linken Ecke
Funktionsergebnis  String in Parameter des gewählten Menüeintrags

Die Funktion Dynamic pop up menu zeigt ein hierarchisches PopUp-Menü an der aktuellen Mausposition oder an der Position, die durch die optionalen Parameter xKoord und yKoord festgelegt wird.
Sie müssen das hierarchische Menü zuvor mit der Funktion Create menu erstellen. Die von Create menu zurückgegebene Referenz wird dann im Parameter Menü übergeben.

Dieser Befehl wird, in Übereinstimmung mit den geltenden Regeln für die Oberfläche, in der Regel durch einen rechten Mausklick oder längeres Drücken der Maustaste (z.B. Kontextmenü) aufgerufen.

Hinweis: Mit der Funktion Pop up menu (Kapitel “Benutzeroberfläche”) können Sie PopUp-Menüs erstellen, die auf Text basieren.

Der optionale Parameter Standard ermöglicht, einen Eintrag im PopUp-Menü als Standardauswahl festzulegen, immer wenn das Menü erscheint. In diesem Parameter übergeben Sie einen eigenen Text für den Menüeintrag. Diesen müssen Sie zuvor über den Befehl SET MENU ITEM PARAMETER definiert haben.
Übergeben Sie diesen Parameter nicht, wird standardmäßig der erste Eintrag im Menü ausgewählt.

Hinweis: Nur der Menüeintrag auf oberster Ebene lässt sich standardmäßig auswählen.

Über die optionalen Parameter xKoord und yKoord können Sie die Position des anzuzeigenden PopUp-Menüs angeben. Hier übergeben Sie jeweils die waagrechten und senkrechten Koordinaten der oberen linken Ecke des Menüs. Die Koordinaten müssen im lokalen Koordinatensystem des aktuellen Formulars in Pixel angegeben werden. Beide Parameter müssen zusammen übergeben werden; ist nur einer übergeben, wird er ignoriert.

Wollen Sie ein PopUp-Menü anzeigen, das einer 3D Schaltfläche zugewiesen ist, übergeben Sie diese Parameter nicht. In diesem Fall berechnet 4D automatisch die Position des Menüs in Bezug auf die Schaltfläche gemäß den Oberflächen-Standards der aktuellen Plattform.

Wurde ein Menüeintrag ausgewählt, gibt der Befehl den eigenen zugewiesenen Text zurück, und zwar so, wie er mit dem Befehl SET MENU ITEM PARAMETER definiert wurde. Sonst gibt die Funktion einen leeren String zurück.

Ab 4D v16 R3: Ist einem Menüeintrag eine Standardaktion zugewiesen, berücksichtigt die Funktion Dynamic pop up menu das auf verschiedenen Ebenen:

  • Ist eine Standardaktion im Kontext des PopUp-Menüs nicht aktiviert, sie kann z.B. nicht ausgelöst werden, wird der Eintrag automatisch ausgeblendet. Über die Funktion Get action info erfahren Sie, ob eine Aktion aktiviert ist.
  • Einträge mit einer zuwiesenen Umschaltaktion sind je nach Auswahl automatisch markiert, nicht markiert oder "gemischt".
  • Wurde der Aktionstitel für den Eintrag über die Konstante ak standard action title gesetzt, erscheint im Menü der lokalisierte Titel.
  • Ist ein Eintrag ausgewählt, wird die zugewiesene Standardaktion ausgelöst. Die Ausführung ist asynchron.

Dieser Code erstellt ein hierarchisches dynamisches PopUp-Menü mit Standardaktionen:

 C_TEXT($refMainContextMenu;$refMenuEdit)
 $refMainContextMenu:=Create menu
 APPEND MENU ITEM($refMainContextMenu;"-")
 APPEND MENU ITEM($refMainContextMenu;ak standard action title)
 SET MENU ITEM PROPERTY($refMainContextMenu;-1;Associated standard action;ak select all)
 APPEND MENU ITEM($refMainContextMenu;ak standard action title)
 SET MENU ITEM PROPERTY($refMainContextMenu;-1;Associated standard action;ak clear)
 APPEND MENU ITEM($refMainContextMenu;ak standard action title)
 SET MENU ITEM PROPERTY($refMainContextMenu;-1;Associated standard action;ak copy)
 APPEND MENU ITEM($refMainContextMenu;ak standard action title)
 SET MENU ITEM PROPERTY($refMainContextMenu;-1;Associated standard action;ak cut)
 APPEND MENU ITEM($refMainContextMenu;ak standard action title)
 SET MENU ITEM PROPERTY($refMainContextMenu;-1;Associated standard action;ak paste)
 APPEND MENU ITEM($refMainContextMenu;"-")
  //Untermenü Text für Bearbeiten
 $refMenuEdit:=Create menu
 APPEND MENU ITEM($refMenuEdit;ak standard action title)
 SET MENU ITEM PROPERTY($refMenuEdit;-1;Associated standard action;ak font bold)
 SET MENU ITEM SHORTCUT($refMenuEdit;-1;Character code("B"))
 APPEND MENU ITEM($refMenuEdit;ak standard action title)
 SET MENU ITEM PROPERTY($refMenuEdit;-1;Associated standard action;ak font italic)
 SET MENU ITEM SHORTCUT($refMenuEdit;-1;Character code("I"))
 APPEND MENU ITEM($refMenuEdit;ak standard action title)
 SET MENU ITEM PROPERTY($refMenuEdit;-1;Associated standard action;ak font linethrough)
 SET MENU ITEM SHORTCUT($refMenuEdit;-1;Character code("L"))
 APPEND MENU ITEM($refMenuEdit;ak standard action title)
 SET MENU ITEM PROPERTY($refMenuEdit;-1;Associated standard action;ak font underline)
 SET MENU ITEM SHORTCUT($refMenuEdit;-1;Character code("U"))
 APPEND MENU ITEM($refMenuEdit;ak standard action title)
 SET MENU ITEM PROPERTY($refMenuEdit;-1;Associated standard action;ak font show dialog)
 APPEND MENU ITEM($refMainContextMenu;"Edit";$refMenuEdit)
 
 paramRef:=Dynamic pop up menu($refMainContextMenu)



Siehe auch 

Get menu item parameter
Get selected menu item parameter
Pop up menu
SET MENU ITEM PARAMETER
SET MENU ITEM PROPERTY

 
EIGENSCHAFTEN 

Produkt: 4D
Thema: Menüs
Nummer: 1006

 
SEITENINHALT 
 
GESCHICHTE 

Erstellt: 4D v11 SQL
Geändert: 4D v16 R3

 
ARTIKELVERWENDUNG

4D Programmiersprache ( 4D v20 R7)