Kontextsensitive Symbolleisten

Veröffentlicht am 01.09.2004

Mit der Menüleiste-Eigenschaft lässt sich eine beliebige benutzerdefinierte Menüleiste an ein bestimmtes Formular knüpfen. Die Menüzeile erscheint dadurch immer dann, wenn das betreffende Formular aktiv ist. Solche Menüzeilen werden daher auch als kontextsensitiv bezeichnet. Leider gibt es keine passende Eigenschaft, um auch eine bestimmte Symbolleiste kontextsensitiv an ein Formular zu binden. Verwenden Sie die BeiAktivierung und BeiDeaktivierung-Ereigniseigenschaften, um kontextsensitive Symbolleiste zu realisieren.

Besonders einfach wird der Vorgang, wenn Sie der Symbolleiste den gleichen Namen wie der kontextsensitiven Menüleiste geben. Eine entsprechende VBA-Prozedur kann dann den Namen aus der Menüleiste-Eigenschaft auslesen und die gleichnamige Symbolleiste öffnen:

Public Sub KontextSymbolleiste (FormObj As Form, _
                                                    Einblenden As Integer) 
Dim Symbolleistenname As Variant 
    Symbolleistenname = FormObj.MenuBar 
    If Einblenden = True Then 
        DoCmd.ShowToolbar Symbolleistenname, acToolbarYes 
    Else 
        DoCmd.ShowToolbar Symbolleistenname, acToolbarNo 
    End If 
End Sub

Platzieren Sie die Prozedur am besten in einem Standardmodul, damit Sie von allen Formularen aus aufgerufen werden kann. 

Um eine Symbolleiste mit einem Formular zu verknüpfen, müssen Sie nun lediglich noch zwei Ereignisprozeduren für die Eigenschaften BeiAktivierung und BeiDeaktivierung anlegen:

Private Sub Form_Activate() 
    KontextSymbolleiste Me, True 
End Sub 
Private Sub Form_Deactivate() 
    KontextSymbolleiste Me, False 
End Sub

Sobald das Formular nun aktiviert wird, öffnet Access die passende Symbolleiste. Sollte es dagegen deaktiviert werden, verschwindet die Symbolleiste wieder

Unsere Dienstleistungen

Als starker Partner an Ihrer Seite unterstützen wir Sie in folgenden Breichen:

Access-Programmierung

Benötigen Sie Unterstützung bei der Programmierung von Access-Anwendungen? Wir bieten die gesamte Bandbreite von der Access-Programmierung auf Stundenbasis bis zur Durchführung eines Software-Projektes als Auftragsarbeit an. Kontaktieren Sie uns für ein kostenloses Erstgespräch.

JETZT KONTAKTIEREN

Software-Beratung

Haben Sie ein Software-Projekt und Sie wissen nicht, ob Access die richtige Plattform ist? Wir haben über 20 Jahre Erfahrung beim Erstellen von Windows-, Web und mobilen Anwendungen. Kontaktieren Sie uns für eine kostenlose Erstberatung.

JETZT KONTAKTIEREN