Profi-Tipp: Eigene Schaltflächen erzeugen und individuell gestalten
Access bietet für die Erstellung von Formularen Standard-Schaltflächen an, die sich in ihrer Größe und Beschriftung anpassen lassen – sogar ein Bild können Sie hinterlegen. Doch damit endet die Freiheit: Auf die Farb- und Formgestaltung haben Sie keinen Einfluss. Wollen Sie in ein Formular einen farbigen Knopf integrieren, müssen Sie daher selbst Hand anlegen und eine eigene Schaltfläche entwerfen.
1. Eigene Schaltfläche einfügen
Öffnen Sie ein Access-Formular in der Entwurfsansicht und fügen Sie im Detailbereich ein Rechteck ein: Klicken Sie dazu in der »Toolbox«-Symbolleiste auf den Knopf »Rechteck« – der Mauszeiger verändert sich zu einem Fadenkreuz, mit dem Sie bei gedrückter Maustaste eine Schaltfläche aufziehen können. Klicken Sie mit der rechten Maustaste auf das Objekt, wählen Sie im Kontextmenü »Eigenschaften« und auf der Registerkarte »Format« als »Hintergrundart« den Eintrag »Normal«. Unter »Hintergrundfarbe« können Sie die Farbe der Schaltfläche bestimmen. Wenn Sie zudem für die Eigenschaft »Spezialeffekt« die Option »Erhöht« wählen, hebt sich das Rechteck durch einen 3D-Effekt scheinbar räumlich vom Formular ab und ähnelt damit einer herkömmlichen Schaltfläche. Sie können diese Einstellungen auch direkt über die gleichnamigen Einträge im Kontextmenü vornehmen. Abschließend hinterlegen Sie dem Ereignis »Beim Klicken« eine VBA-Funktion, die Access später beim Klick auf die Schaltfläche ausführen soll.
2. Schaltfläche beschriften
Wählen Sie aus der »Toolbox« das Symbol »Bezeichnung« und klicken Sie auf die Schaltfläche. Sie können nun eine Bezeichnung eintippen und sie über die Eigenschaften Textfarbe, Schriftart, -grad und -breite individuell gestalten. Für die Eigenschaften »Rahmenart« und »Hintergrundart« sollten Sie die Option »Transparent« eingestellt lassen.
! Achtung: Die Beschriftung liegt im Formular als eigenes Textobjekt über dem Rechteck. Wenn Sie die Schaltfläche später verschieben, müssen Sie auch die Beschriftung verschieben. Zudem ist das Ereignis »Beim Klicken« der Beschriftung mit dem gleichnamigen Ereignis des Rechtecks zu verknüpfen: Rufen Sie dazu als Ereignisprozedur der Beschriftung einfach dieselbe VBA-Funktion wie beim Rechteck auf.
3. Schaltfläche animieren
Öffnen Sie mit »Ansicht | Code« das Formularmodul und ergänzen Sie unterhalb der ersten Zeile »Option Compare Database« die Anweisung: Private Declare Sub Sleep Lib "kernel32"(ByVal dsMS AsLong) Nun können Sie innerhalb des Moduls die Funktion »Sleep()« aus der Windows-Bibliothek KERNEL32.DLL verwenden. Erzeugen Sie eine neue Prozedur mit der Bezeichnung »PressButton()« und übergeben Sie den Parameter »strControlName«. Wählen Sie als Parametertyp »String«. Fügen Sie diesen Quelltext in die leere Prozedur ein:Public Sub PressButton (strControlName As String)
Dim lgRememberEffect As Long
With Me.Controls(strControlName)
If .ControlType = acRectangle Then
lgRememberEffect = .SpecialEffect
.SpecialEffect = 0
Me.Repaint
Sleep (500)
.SpecialEffect = lgRememberEffect
Me.Repaint
End If
End With
End Sub Diese Prozedur stellt das Rechteck für einen Moment ohne 3D-Effekt dar. So entsteht der gewohnte Eindruck einer betätigten Schaltfläche, die sich in ihrer Ausgangsposition von der Grundfläche abhebt. Sie müssen nur noch »PressButton()« in der Ereignisprozedur des Rechtecks aufrufen und dessen Namen dann als Parameter übergeben.
|