Einträge zum Kontextmenü hinzufügen
Bieten Sie Befehle Ihrer Anwendung, etwa „Details anzeigen“, im Kontextmenü einer Struktur oder einer Strukturliste an.
Voraussetzungen: WKL Forms Object Library 1.23 oder höher.
Lösungsüberblick
AddMenuItem hängt einen Eintrag mit Beschriftung und Kennung (Tag) an das eingebaute Kontextmenü an. MenuItemClick
meldet einen Klick mit der Kennung und dem Schlüssel des Knotens, auf dem das Menü geöffnet wurde. Mit
ContextMenu = False blenden Sie die eingebauten Einträge aus, sodass nur Ihre eigenen bleiben. NodeRightClick mit
Cancel = True unterdrückt das Menü ganz, etwa um stattdessen ein Kontextmenü von Access anzuzeigen.
Umsetzung
Private Sub Form_Load()
With Me!Tree1.Object
.AddMenuItem "Details anzeigen", "details", True ' True: separator before the item
.AddMenuItem "Als erledigt markieren", "done"
End With
End Sub
Private Sub Tree1_MenuItemClick(ByVal Tag As String, ByVal Key As Variant)
Select Case Tag
Case "details": DoCmd.OpenForm "frmDetails", , , "ID = " & Key
Case "done": CurrentDb.Execute "UPDATE tblAufgaben SET Erledigt = True WHERE ID = " & Key
End Select
End Sub
Hinweise
- Eigene Einträge werden nicht mit dem Formular gespeichert; fügen Sie sie in
Form_Loadhinzu. RemoveMenuItementfernt einen Eintrag anhand seiner Kennung,ClearMenuItemsalle eigenen Einträge.- Die eingebauten Einträge stehen am Anfang, jeder nur dann, wenn seine Eigenschaft den Vorgang zulässt. In
WklTreeList,WklGanttundWklGridlegtMenuPlacementfest, ob Ihre Einträge vor den eingebauten stehen, allein stehen oder die eingebauten ausblenden.MenuItemEnabled,MenuItemChecked,MenuItemGlyph,MenuItemShortcutundMenuItemParent(Untermenüs) ändern einen Eintrag nachAddMenuItem, zum Beispiel inBeforeContextMenu, das den Datensatz meldet, bevor sich das Menü öffnet. - Ohne Formularmodul verwenden Sie stattdessen eine Kontextmenüleiste von Access (Access-Kontextmenüleiste in einem Raster verwenden).
- Die Beschriftungen sind Ihre eigenen Texte; die eingebauten Einträge folgen der Sprache der Komponenten.
Verwandte Themen
de/wiki/msaccess/comctl/how-to/add-context-menu-items.txt · Zadnja sprememba: uporabnika Wolfgang van der Stille