Command-Button: Befehlsschaltflächen zum Durchführen von Operationen

Die einfachste Möglichkeit der Arbeit mit einer Anwendung sind Schaltflächen, auf die der Benutzer klicken kann. Sie können das in Visual Basic vorhandene Schaltflächen-Steuerelement verwenden, oder Sie können eine eigene Schaltfläche erstellen, indem Sie ein Anzeige-Steuerelement mit einem Grafikelement (z.B. Symbol) einsetzen.

Verwenden von Befehlsschaltflächen

Die meisten Visual Basic-Anwendungen verfügen über Befehlsschaltflächen, auf die der Benutzer nur klicken muß, um Operationen auszuführen. Wenn der Benutzer die Schaltfläche wählt, wird nicht nur die entsprechende Operation durchgeführt, sondern die Schaltfläche sieht auch so aus, als ob sie niedergedrückt und losgelassen würde. Immer wenn der Benutzer auf eine Schaltfläche klickt, wird die Click-Ereignisprozedur aufgerufen. Sie schreiben den Code in die Click-Ereignisprozedur, damit die jeweils gewünschte Operation durchgeführt wird.

Zur Laufzeit einer Anwendung haben Sie viele Möglichkeiten, um eine Befehlsschaltfläche auszuwählen:

·     Sie verwenden eine Maus, um auf die Schaltfläche zu klicken.

·     Sie bewegen den Fokus mit der TAB-TASTE zur Schaltfläche und wählen dann die Schaltfläche durch Drücken der LEERTASTE oder der EINGABETASTE (siehe "Der Fokus" weiter unten in diesem Kapitel).

·     Sie drücken die Zugriffstaste (ALT + unterstrichener Buchstabe) einer Befehlsschaltfläche.

·     Sie setzen die Value-Eigenschaft der Befehlsschaltfläche im Code auf True               cmdClose.Value = True

·     Sie verwenden das Click-Ereignis der Befehlsschaltfläche im Code:                                cmdClose_Click

·     Wenn die Befehlsschaltfläche die Standard-Befehlsschaltfläche des Formulars ist, wird die Schaltfläche durch das Drücken der eingabetaste ausgewählt, auch wenn Sie den Fokus auf ein anderes Steuerelement (jedoch keine Schaltfläche) im Formular setzen. Siehe unten: Default-Eigenschaft.

·     Wenn es sich bei der Befehlsschaltfläche um die Standard-Abbrechen-Schaltfläche für dieses Formular handelt, dann wird die Schaltfläche durch Drücken der esc-taste gewählt, selbst wenn Sie den Fokus auf ein anderes Steuerelement setzen. Siehe unten: Cancel-Eigenschaft.

Alle diese Operationen führen zum Aufruf der Click-Ereignisprozedur durch Visual Basic.

Die Anwendung "Schaltflächen testen" (Beispielanwendung)

Mit der Caption-Eigenschaft zeigen Sie Text auf der Schaltfläche an, der dem Benutzer den Zweck der Schaltfläche mitteilt. Das Beispiel "Schaltflächen-Beispiel" aus der Steuerelemente-Beispielanwendung in Abbildung 12 enthält eine Befehlsschaltfläche, deren Caption-Eigenschaft den Wert "Ampel umschalten" hat. (Eine ausführbare Version dieses Beispiels finden Sie im Formular Button.frm in der Beispielanwendung Controls.vbp.)

Abbildung 12:   Befehlsschaltfläche mit einer Aufschrift 

Die Zugriffstaste für diese Schaltfläche ist 'A', was durch einen Unterstrich gekennzeichnet ist. Durch das Einfügen eines kaufmännischen Und-Zeichens (&) in den Text der Caption-Eigenschaft wird das Zeichen, das hinter dem Zeichen "&" steht, zur Zugriffstaste für diese Schaltfläche (z.B. "&Ampel umschalten").

Wenn ein Benutzer auf die Befehlsschaltfläche klickt, wird der Code in der Click-Ereignisprozedur der Befehlsschaltfläche ausgeführt. In diesem Beispiel wird bei jedem Klicken auf die Schaltfläche ein anderes Ampelsymbol angezeigt.

Festlegen der Beschriftung

Mit der Caption-Eigenschaft können Sie den auf der Schaltfläche angezeigten Text ändern. Zur Entwurfszeit können Sie diese Eigenschaft festlegen, indem Sie die Eigenschaft im Eigenschaftenfenster des Steuerelements auswählen.

Sie können für die Caption-Eigenschaft insgesamt bis zu 255 Zeichen festlegen. Falls die Beschriftung über die Breite der Befehlsschaltfläche hinausgeht, wird sie in die nächste Zeile umgebrochen. Geht die Gesamthöhe der Beschriftung jedoch über das Steuerelement hinaus, wird der Text abgeschnitten.

Die auf der Schaltfläche angezeigte Schriftart können Sie ändern, indem Sie die Font-Eigenschaft festlegen.

Erstellen von Tastenkombinationen

Mit der Caption-Eigenschaft können Sie Tastenkombinationen für den Zugriff auf die Befehlsschaltflächen erstellen, indem Sie ein kaufmännisches Und (&) vor dem Buch­staben einfügen, der als Zugriffstaste verwendet werden soll. Um beispielsweise eine Zugriffstaste für die Beschriftung "Drucken" zu erstellen, fügen Sie ein kauf­männisches Und vom dem Buchstaben "D" ein: "&Drucken". Zur Laufzeit wird der Buchstabe "D" unterstrichen, und der Benutzer kann die Befehlsschaltfläche durch gleichzeitiges Drücken von ALT+D auswählen.

Festlegen der Default- und Cancel-Eigenschaften

In jedem Formular können Sie eine Befehlsschaltfläche als Standardbefehlsschaltfläche auswählen; dies bedeutet, dass die Befehlsschaltfläche immer gewählt wird, wenn der Benutzer die EINGABETASTE drückt, wobei es keine Rolle spielt, welches Steuerelement in dem Formular den Fokus hat. Setzen Sie die Default-Eigenschaft auf True, um eine Befehlsschaltfläche als Standardschaltfläche festzulegen.

Sie können auch für das Abbrechen eine Standardschaltfläche festlegen. Wenn die Cancel-Eigenschaft einer Befehlsschaltfläche auf True gesetzt ist, wird die Schaltfläche immer ausgewählt, wenn der Benutzer ESC drückt; dabei spielt es keine Rolle, welches Steuerelement in dem Formular den Fokus hat.

Auswählen der Befehlsschaltfläche

Die Value-Eigenschaft

Wenn der Benutzer die Befehlsschaltfläche auswählt, wird ihre Value-Eigenschaft auf True gesetzt und das Click-Ereignis ausgelöst. False (Standard) zeigt an, dass die Schaltfläche nicht ausgewählt wurde. Sie können die Value-Eigenschaft im Code verwenden, um das Click-Ereignis der Befehlsschaltfläche auszulösen. Ein Beispiel:

cmdClose.Value = True

Das Click-Ereignis

Wenn ein Benutzer auf die Schaltfläche klickt, wird das Click-Ereignis der Befehlsschaltfläche ausgelöst, und der Code, den Sie in die Click-Ereignisprozedur geschrieben haben, wird ausgeführt.

Durch Klicken auf eine Befehlsschaltfläche werden auch die Ereignisse MouseDown und MouseUp ausgelöst. Falls Sie Ereignisprozeduren für diese mit dem Klicken zusammenhängenden Ereignisse hinzufügen möchten, sollten Sie sicherstellen, dass kein Konflikt zwischen den durch die Ereignisse ausgelösten Aktionen besteht. Die Reihenfolge, in der diese drei Ereignisse auftreten, ist von Steuerelement zu Steuerelement unterschiedlich. Im Befehlsschaltfläche-Steuerelement treten diese Ereignisse in der folgenden Reihenfolge auf: MouseDown, Click, MouseUp.

Anmerkung:   Falls der Benutzer versucht, einen Doppelklick auf das Befehlsschaltfläche-Steuerelement auszuführen, wird jedes Klicken separat verarbeitet, da das Befehlsschaltfläche-Steuerelement das Doppelklick-Ereignis nicht unterstützt.

Optisch ansprechendere Gestaltung der Befehlsschaltfläche

Das Befehlsschaltfläche-Steuerelement kann wie die Kontrollkästchen- und Optionsfeld-Steuerelemente auch optisch ansprechender gestaltet werden, indem Sie die Style-Eigenschaft auf 1 ("Grafisch") ändern und dann die Eigenschaften Picture, DownPicture und DisabledPicture verwenden.

So können Sie beispielsweise ein Symbol oder eine Grafik zu einer Befehlsschaltfläche hinzufügen (Picture-Eigenschaft)

oder jeweils unterschiedliche Bilder anzeigen, wenn auf die Schaltfläche geklickt wird (DownPicture) bzw. wenn sie nicht aktiv ist (DisabledPicture).