Anfang des Inhaltsbereichs

Funktionsdokumentation Kontextmenü  Dokument im Navigationsbaum lokalisieren

Achtung

Kontextmenüs werden vom SAP GUI for HTML nicht unterstützt.

 

Verwendung

Das Kontextmenü (rechte Maustaste, SHIFT F10 ) ermöglicht das Anzeigen von kontextsensitiven Menüs. Der Kontext wird über den Ort definiert, an dem der Benutzer das Kontextmenü aufgerufen hat

Der Benutzer kann über das Kontextmenü Funktionen auswählen, die für den aktuellen Kontext relevant sind.

Funktionsumfang

Soll auf einem Custom Control ein Kontextmenü implementiert werden, muß das Ereignis für das Anfordern eines Kontextmenüs (Ereignis context_menu ) registriert werden. Das Ereignis für das Auswählen eines Eintrags im Kontextmenü (Ereignis context_menu_selected ) wird entweder von der Control-Verschalung automatisch registriert (z.B. SAP Tree) oder muß explizit registriert werden (z.B. SAP Picture).

Fordert der Benutzer auf einem Objekt ein Kontextmenü an, wird über den normalen Ereignismechanismus das Anwendungsprogramm aufgerufen. In der Ereignisbehandlermethode zum Ereignis context_menu erhält das Programm als Ereignisparameter eine Menüreferenz. Das Programm benutzt diese Menüreferenz, um das anzuzeigende Menü aufzubauen. Dabei können mit dem Menu Painter definierte Menüs oder dynamisch aufgebaute Menüs benutzt werden. Nach Verlassen der Ereignisbehandlermethode wird das Kontextmenü automatisch angezeigt.

Achtung

Das SAP Picture bildet eine Ausnahme. Hier bekommen Sie keine Menüreferenz als Ereignisparameter übergeben.

Wird eine Menüfunktion des Kontextmenüs ausgewählt, wird wiederum ein Ereignis ausgelöst, das an das Applikationsprogramm übergeben wird. Auch auf dieses Ereignis muß die Applikation eine Behandlermethode registrieren. In der Behandlermethode wird der übergebene Funktionscode ausgewertet, der über einen Ereignisparameter übergeben wird.

Aktivitäten

Achtung

Der SAP Tree bildet eine Ausnahme bei der Registrierung von den Ereignissen. Hier muß nur das Ereignis context_menu registriert werden. Das Ereignis context_menu_selected wird automatisch von der Control-Verschalung mitregistriert.

Aufbau des Kontextmenüs

In der Implementierung der Behandlermethode für das Ereignis context_menu muß das Menü dem Control zugeordnet werden. Dabei muß unter Umständen geprüft werden, in welchem Kontext das Kontextmenü aufgerufen wurde.

Der Aufbau des Kontextmenüs erfolgt über die Klasse CL_CTMENU . Bei fast allen Control-Verschalungen bekommen Sie als Ereignisparameter des Ereignisses context_menu eine Kontextmenü-Objektreferenz geliefert. Ist dies nicht der Fall (z.B. beim SAP Picture), müssen Sie ein Objekt der Klasse CL_CTMENU erzeugen.

Auf das Kontextmenüobjekt können Sie folgende Methoden anwenden:

Methode

Bedeutung

LOAD_GUI_STATUS

Laden eines im Menu Painter vordefinierten Kontextmenüs (siehe unten)

ADD_FUNCTION

Hinzufügen einer Funktion

ADD_MENU

Hinzufügen eines im Menu Painter definierten Menüs

ADD_SUBMENU

Hinzufügen eines im Menu Painter definierten Menüs als Submenü

ADD_SEPARATOR

Hinzufügen einer Trennlinie

RESET

Zurücksetzen auf Initialwert

HIDE FUNCTIONS

Ausblenden einer Funktion

SHOW_FUNCTIONS

Einblenden einer Funktion

DISABLE_FUNCTIONS

Deaktivieren einer Funktion

ENABLE_FUNCTIONS

Aktivieren einer Funktion

Nach Verlassen der Ereignisbehandlermethode wird das Kontextmenü automatisch angezeigt. Ausnahme bilden hier das SAP Picture Control und das SAP Toolbar Control. Bei diesen Controls muß das Kontextmenü explizit über die Methode display_context_menu angezeigt werden.

Auswerten des Funktionscodes

Die Interpretation des ausgewählten Menüpunktes erfolgt in der Behandlermethode zum Ereignis context_menu_selected . Über den Funktionscode wird das ausgewählte Menü identifiziert und eine entsprechende Reaktion ausgeführt.