Definition eines Kontextmenüs 
Das ALV Grid Control benutzt das Kontextmenü und belegt es mit Standardfunktionen. Sie können es kontextsensitiv um eigene Funktionen erweitern und gegebene Funktionen ausblenden oder deaktivieren.
Das Kontextmenü ist eine Instanz der Klasse CL_CTMENU. Wird das Ereignis CONTEXT_MENU_REQUEST vom Benutzer ausgelöst, so enthält der Ereignisparameter E_OBJECT eine Referenz auf das Standard-Kontextmenü.
Hinweis
Siehe auch den Report BCALV_GRID_06 in der Entwicklungsklasse SLIS.
Sie können dieses Menü folgendermaßen verändern:
Um eine Zeile im Menü hinzuzufügen, rufen Sie die Methode add_function auf:
Syntax
CALL METHOD E_OBJECT->ADD_FUNCTION EXPORTING FCODE = 'DELE' TEXT = TEXT-003. "Delete
Um schon vorhandene Funktionen zu deaktivieren (Anzeige in Ghost-Schrift), übergeben Sie alle entsprechenden Funktionscodes der Methode disable_functions in einer Tabelle:
Syntax
DATA: LT_FCODES TYPE UI_FUNCTIONS, CLEAR LT_FCODES. APPEND CL_GUI_ALV_GRID=>MC_FC_COL_OPTIMIZE TO LT_FCODES. APPEND CL_GUI_ALV_GRID=>MC_FC_HELP TO LT_FCODES. CALL METHOD E_OBJECT->DISABLE_FUNCTIONS EXPORTING FCODES = LT_FCODES.
Um schon vorhandene Funktionen auszublenden, gehen Sie genauso vor und rufen statt der Methode disable_functions die Methode hide_functions auf.
Mit den Methoden enable_functions und show_functions können Sie die jeweiligen Funktionen wieder aktivieren beziehungsweise anzeigen.
Hinweis
Die Funktionscodes zu eigenen Funktionen fragen Sie beim Ereignis user_command ab.