Steuerelemente, die dem Benutzer Wahlmöglichkeiten bieten

Die meisten Anwendungen müssen ihren Benutzern Wahlmöglichkeiten anbieten, die von einer einfachen Ja/Nein-Option bis zur der Auswahl aus einer Liste mit Hunderten von Listeneinträgen reichen. Visual Basic enthält verschiedene Standardsteuerelemente, die für solche Wahlmöglichkeiten gut geeignet sind. Die folgende Übersicht fasst diese Steuerelemente und die jeweilige Einsatzmöglichkeit zusammen.

Gewünschte Funktion

Verwendetes Steuerelement

Eine kleine Anzahl an Wahlmöglichkeiten, aus denen der Benutzer auch mehrere auswählen kann.

CheckBox (Kontrollkästchen)

Eine kleine Anzahl von Optionen, aus denen der Benutzer nur eine auswählen kann.

OptionButton (Optionsfelder)
Verwenden Sie Rahmen, wenn weitere Gruppen erforderlich sind

Eine Liste, in der der Benutzer einen Bildlauf durchführen und einen Wert wählen kann.

ListBox (Listenfeld)

Eine Liste, in der der Benutzer einen Bildlauf durchführen und einen Wert wählen kann, kombiniert mit einem Textfeld. Der Benutzer kann entweder einen Begriff aus einer Liste wählen oder einen Begriff in das Bearbeitungsfeld eingeben.

ComboBox (Kombinationsfeld)

CheckBox (Kontrollkästchen)
zum Auswählen verschiedener Optionen

 Abbildung     Das Kontrollkästchen-Steuerelement

Ein Kontrollkästchen zeigt an, ob eine bestimmte Bedingung gerade aktiviert (Häkchen) oder deaktiviert ist.
In einer Anwendung verwenden Sie Kontrollkästchen, um dem Benutzer die Optionen True/False oder Ja/Nein zur Wahl zu stellen. Da Kontrollkästchen unabhängig voneinander sind, kann ein Benutzer beliebig viele Kontrollkäst­chen gleichzeitig aktivieren. In Abbildung 19 können z.B. sowohl Fett als auch Kursiv aktiviert werden.

Abbildung 19   Kontrollkästchen
Die Value-Eigenschaft

Die Value-Eigenschaft des Kontrollkästchen-Steuerelements zeigt an, ob das Kontrollkästchen aktiviert, deaktiviert oder nicht verfügbar (ausgeblendet) ist. Wurde das Kontrollkästchen aktiviert, ist der Wert auf 1 gesetzt.

Einstellung

Wert

Konstante

Deaktiviert

0

vbUnchecked

Aktiviert

1

vbChecked

Nicht verfügbar

2

vbGrayed

Die folgende Tabelle listet die Werte und die entsprechenden Visual Basic-Konstanten auf, die zum Festlegen der Value-Eigenschaft verwendet werden.

Der Benutzer klickt auf das Kontrollkästchen-Steuerelement, um anzuzeigen, ob das Steuerelement aktiviert oder deaktiviert sein soll. Sie können dann den Status des Steuerelements testen und die Anwendung so programmieren, daß eine Aktion auf der Basis dieser Informationen durchgeführt wird.

Standardmäßig ist das Kontrollkästchen-Steuerelement auf 0 (vbUnchecked) gesetzt. Wenn Sie eine Vorauswahl von mehreren Kontrollkästchen aus einer Liste von Kontrollkästchen treffen möchten, können Sie dazu die Value-Eigenschaft auf 1 (vbChecked) in den Prozeduren Form_Load oder Form_Initialize setzen.

Sie können die Value-Eigenschaft auch auf 2 (vbGrayed) setzen, um das Kontrollkästchen zu deaktivieren. Der Benutzer kann es dann nicht anwählen. So können Sie beispielsweise ein Kontrollkästchen deaktivieren, bis eine bestimmte Bedingung erfüllt ist, um es dann per Programmcode wieder zu aktivieren.

Das Click-Ereignis

Immer wenn der Benutzer auf das Kontrollkästchen-Steuerelement klickt, wird das Click-Ereignis ausgelöst. Sie können Ihre Anwendung so programmieren, dass eine Aktion durchgeführt wird, die vom Status des Kontrollkästchens abhängt. Im folgenden Beispiel ändert sich die Caption-Eigenschaft des Kontrollkästchen-Steuerelements jedes Mal, wenn auf das Steuerelement geklickt wird. Dadurch soll der aktivierte bzw. deaktivierte Status des Steuerelements angezeigt werden.

Private Sub Check1_Click()

If Check1.Value = vbChecked Then

Check1.Caption = "Aktiviert"

ElseIf Check1.Value = vbUnchecked Then

Check1.Caption = "Deaktiviert"

End If

End Sub

Private Sub Check1_Click()

If Check1.Value = 1 Then

Check1.Caption = "Aktiviert"

ElseIf Check1.Value = 0 Then

Check1.Caption = "Deaktiviert"

End If

End Sub

Anmerkung   Falls der Benutzer versucht, auf ein Kontrollkästchen-Steuerelement doppelzuklicken, wird jedes Klicken getrennt verarbeitet - das Kontrollkästchen-Steuerelement unterstützt das Doppelklick-Ereignis also nicht.

Reagieren auf Maus und Tastatur

Das Click-Ereignis des Kontrollkästchen-Steuerelements wird auch ausgelöst, wenn der Fokus mit der Tastatur auf das Steuerelement gesetzt wird, indem Sie die TABULATORTASTE und dann die LEERTASTE drücken.

Sie können eine weitere Auswahlmöglichkeit für das Kontrollkästchen-Steuerelement hinzufügen, indem Sie ein kaufmännisches Und-Zeichen (&) vor einem Buchstaben in der Caption-Eigenschaft einfügen, um eine Tasten­kombination zu erstellen.

Optisch ansprechendere Gestaltung des Kontrollkästchen-Steuerelements

Abbildung 20   Kontrollkästchen-Beispiel

Das Kontrollkästchen-Steuerelement kann wie der CommandButton optisch ansprechender gestaltet werden, wenn Sie die Einstellung der Style-Eigenschaft ändern und dann die Eigenschaften Picture, DownPicture und DisabledPicture verwenden (siehe den entsprechenden Abschnitt zum CommandButton.)

Die Anwendung "Kontrollkästchen"

Das Kontrollkästchen-Beispiel verwendet ein Kontroll­kästchen, um festzulegen, ob der Text normal oder kursiv dargestellt wird. Eine ausführbare Version dieses Beispiels finden Sie im Formular Check.frm in der Beispielanwendung Controls.vbp.

Die Anwendung beinhaltet ein Textfeld, ein Bezeichnungsfeld, eine Befehlsschaltfläche und zwei Kontrollkästchen, wie in Abbildung 20 dargestellt.

Die folgende Tabelle enthält die Einstellungen der Eigenschaften für die Objekte in der Anwendung.

Objekt

Eigenschaft

Einstellung

Formular

Name
Caption

frmCheck
Kontrollkästchen-Beispiel

Textfeld

Name
Text

txtDisplay
Ein beliebiger Text

Erstes Kontrollkästchen

Name
Caption

chkBold
&Fett

Zweites Kontrollkästchen

Name
Caption

chkItalic
&Kursiv

Befehlsschaltfläche

Name
Caption

cmdClose
&Schließen

Bezeichnungsfeld

Name
Caption

lblInfo
Aktivieren Sie die Kontrollkästchen "Fett" und "Kursiv", und verfolgen Sie die Auswirkungen auf den Text im Textfeld.

Wenn Sie Fett oder Kursiv aktivieren, wird die Value-Eigenschaft des Kontrollkästchens auf 1 gesetzt. Wenn Sie ein Kontrollkästchen deaktivieren, wird die dazugehörige Value-Eigenschaft auf 0 gesetzt. Der Standardwert ist 0, so daß das Kästchen zunächst nicht aktiviert ist, solange Sie den Wert nicht ändern. Sie können die Konstanten vbChecked und vbUnchecked für die Werte 1 und 0 verwenden.

Ereignisse in der Anwendung "Kontrollkästchen"

Das Click-Ereignis für das Kontrollkästchen wird ausgelöst, sobald Sie auf das Kästchen klicken. Diese Ereignisprozedur prüft, ob das Kontroll­kästchen aktiviert wurde (d.h. ob Value = vbChecked ist). In diesem Fall wird der Text fett oder kursiv angezeigt, indem die Bold- oder Italic-Eigenschaft des von der Font-Eigenschaft des Textfeldes zurückgegebenen Font-Objektes gesetzt wird.

Private Sub chkBold_Click ()

   If ChkBold.Value = vbChecked Then     ' Falls aktiviert.

      txtDisplay.Font.Bold = True

   Else                                  ' Falls nicht aktiviert.

      txtDisplay.Font.Bold = False

   End If

End Sub

Private Sub chkItalic_Click ()

   If ChkItalic.Value = vbChecked Then   ' Falls aktiviert.

      txtDisplay.Font.Italic = True

   Else                                 ' Falls nicht aktiviert.

      txtDisplay.Font.Italic = False

   End If

End Sub