Info-Fenster nach Wahl anzeigen (Access 97, 2000)
Veröffentlicht am 30.12.2003
Benutzerdefinierte Formulareigenschaften.
Besonders gut ausgestattete Access-Anwendungen zeigen beim Start meistens ein Startformular an, in dem wichtige Informationen oder Tipps zur Benutzung angezeigt werden. Diese Formulare verfügen auch meistens über eine Option, mit der das Fenster bei zukünftigen Starts der Datenbank unterbunden werden kann.
Um Ihrem Formular diese Option hinzuzufügen, benötigen Sie lediglich ein Kontrollkästchen und eine benutzerdefinierte Formulareigenschaft namens StartupNichtAnzeigen.
Beim Laden des Formulars wird kontrolliert, ob die Eigenschaft StartupNichtAnzeigen existiert. Wenn dies nicht der Fall ist, wird das Formular wie gewohnt geöffnet. Andernfalls wird die Eigenschaft auf den Inhalt Ja oder Nein überprüft und der Vorgang dementsprechend abgebrochen bzw. fortgesetzt.
Benutzerdefinierte Eigenschaften lassen sich einem Formular leider nicht direkt hinzufügen. Als Alternative kommt das Objekt UserDefined zum Einsatz. Der Vorteil dieses Objekts besteht darin, dass alle Eigenschaften des Objekts auch im Register Anpassen des Dialogfensters Datei / Datenbankeigenschaften aufgeführt werden.
Die folgende Beim Laden-Ereignisprozedur kontrolliert sowohl das Vorhandensein als auch den Inhalt der Eigenschaft und bricht den Ladevorgang des Formulars bei Bedarf ab:
Private Sub Form_Load()
On Error GoTo Err_Form_Load
' Fehlercode für den Fall, dass
' Eigenschaft nicht existiert
Const KeineEigenschaft = 3270
Dim dbThis As Database
Dim docThis As Document
Dim prpThis As Property
Set dbThis = CurrentDb()
Set docThis = dbThis.Containers("Databases") !Userdefined
If docThis.Properties!StartupNichtAnzeigen Then
DoCmd.Close
End If
Exit_Form_Load
Exit Sub
Err_Form_Load
If Err = KeineEigenschaft Then
Set prpThis = docThis.CreateProperty _ ("StartupNichtAnzeigen", dbBoolean, False)
docThis.Properties.Append prpThis
Resume
Else
MsgBox Err.Description, vbCritical Resume
Exit_Form_Load
End If
End Sub
Nachdem die Eigenschaft erzeugt und das Formular geladen wurde, kann die Eigenschaft über das Kontrollkästchen chkNichtAnzeigen auf Wahr bzw. Falsch gesetzt werden. Die Ereignisprozedur Beim Klicken des Kontrollkästchens hat den folgenden Aufbau:
Private Sub chkNichtAnzeigen_Click()
Dim dbThis As Database
Dim docThis As Document
Set dbThis = CurrentDb()
Set docThis = dbThis.Containers("Databases") !Userdefined docThis.Properties!StartupNichtAnzeigen = Me![chkNichtAnzeigen]
End Sub
