Schaltflächentypen

Es gibt mehrere Arten von Schaltflächen und eine oder mehrere Schaltflächenstile, um zwischen Schaltflächen desselben Typs zu unterscheiden.

In diesem Dokument werden die folgenden Themen erläutert.

Schaltflächentypen und -stile

Eine Schaltfläche gehört zu einem Typ und verfügt möglicherweise über zusätzliche Stile, die sich auf ihr Aussehen und Verhalten auswirken. Eine Tabelle mit Schaltflächenformatvorlagen finden Sie unter Schaltflächenstile.

Der folgende Screenshot zeigt die verschiedenen Arten von Schaltflächen.

Screenshot eines Dialogfelds mit Beispielen für acht Arten von Schaltflächen

Der Screenshot zeigt, wie Schaltflächen in Windows Vista angezeigt werden können. Die Darstellung variiert je nach Version des Betriebssystems und je nach dem vom Benutzer festgelegten Design.

Beachten Sie die folgenden Punkte zur Abbildung:

  • Das Kontrollkästchen mit drei Status wird im unbestimmten Zustand angezeigt. Wenn es aktiviert oder deaktiviert ist, sieht es wie ein normales Kontrollkästchen aus.
  • Die große Drucktaste wurde programmgesteuert auf den Pushzustand festgelegt (durch Senden der BM_SETSTATE-Nachricht ), sodass sie auch dann angezeigt wird, wenn sie nicht geklickt wird.
  • Im dargestellten visuellen Stil wechselt der Hintergrund der Standard-Drucktaste (oder einer anderen Drucktaste mit dem Eingabefokus) zwischen Blau und Grau.

Kontrollkästchen

Ein Kontrollkästchen besteht aus einem quadratischen Kontrollkästchen und einer anwendungsdefinierten Bezeichnung, einem Symbol oder einer Bitmap, die eine Auswahl angibt, die der Benutzer durch Auswählen der Schaltfläche treffen kann. Anwendungen zeigen in der Regel Kontrollkästchen an, damit der Benutzer eine oder mehrere Optionen auswählen kann, die sich nicht gegenseitig ausschließen.

Ein Kontrollkästchen kann eine von vier Formaten sein: Standard, Automatisch, Drei-Zustand und automatischer Drei-Zustand, wie durch die Konstanten BS_CHECKBOX, BS_AUTOCHECKBOX, BS_3STATE und BS_AUTO3STATE definiert. Jede Formatvorlage kann zwei Kontrollkästchen annehmen: aktiviert (ein Häkchen im Kontrollkästchen) oder deaktiviert (kein Häkchen). Darüber hinaus kann ein Kontrollkästchen mit drei Zustanden von einem unbestimmten Zustand ausgehen (ein schattiertes Kontrollkästchen innerhalb des Kontrollkästchens), was bedeuten kann, dass der Benutzer keine Wahl getroffen hat. Wenn Sie wiederholt auf ein Standard- oder automatisches Kontrollkästchen klicken, wird es von aktiviert zu deaktiviert und wieder zurückgeschaltet. Wenn Sie wiederholt auf ein Kontrollkästchen mit drei Zustanden klicken, wird es von aktiviert auf deaktiviert umgeschaltet, um unbestimmt zu werden, und wiederholt dann den Zyklus.

Wenn der Benutzer auf ein Kontrollkästchen (eines beliebigen Stils) klickt, erhält das Kontrollkästchen den Tastaturfokus. Das System sendet dem übergeordneten Fenster des Kontrollkästchens eine WM_COMMAND Nachricht, die den BN_CLICKED Benachrichtigungscode enthält. Das übergeordnete Fenster muss diese Nachricht nicht verarbeiten, wenn sie von einem automatischen Kontrollkästchen oder einem automatischen Kontrollkästchen mit drei Status stammt, da das System den Überprüfungsstatus für diese Stile automatisch festlegt. Aber das übergeordnete Fenster muss die Nachricht behandeln, wenn sie von einem nicht automatischen Kontrollkästchen oder Kontrollkästchen mit drei Status stammt, da das übergeordnete Fenster für das Festlegen des Überprüfungsstatus für diese Formatvorlagen verantwortlich ist. Unabhängig vom Kontrollkästchenstil streicht das System das Kontrollkästchen automatisch neu, sobald sein Zustand geändert wurde.

Die Anwendung kann den Zustand eines Kontrollkästchens mithilfe der IsDlgButtonChecked-Funktion ermitteln.

Gruppenfelder

Ein Gruppenfeld ist ein Rechteck, das eine Reihe von Steuerelementen umgibt, z. B. Kontrollkästchen oder Optionsfelder, mit einer anwendungsdefinierte Textbezeichnung in der oberen linken Ecke. Der einzige Zweck eines Gruppenfelds besteht darin, Steuerelemente zu organisieren, die sich auf einen gemeinsamen Zweck beziehen (normalerweise durch die Bezeichnung angegeben). Das Gruppenfeld weist nur eine Formatvorlage auf, die durch die Konstante BS_GROUPBOX definiert wird. Da ein Gruppenfeld nicht ausgewählt werden kann, hat es keinen Prüf-, Fokus- oder Pushzustand.

Drucktasten

Eine Schaltfläche ist ein Rechteck, das eine anwendungsdefinierte Textbezeichnung, ein Symbol oder eine Bitmap enthält, die angibt, was die Schaltfläche tut, wenn der Benutzer sie auswählt.

Eine Drucktaste kann eine von zwei Stilen sein, Standard oder Standard, wie durch die Konstanten BS_PUSHBUTTON und BS_DEFPUSHBUTTON definiert. Ein Standard-Taster wird in der Regel verwendet, um einen Vorgang zu starten. Er empfängt den Tastaturfokus, wenn der Benutzer darauf klickt. Eine Standard-Druckschaltfläche wird in der Regel verwendet, um die am häufigsten verwendete Oder Standardauswahl anzugeben, z. B. das Schließen des Dialogfelds. Es ist eine Schaltfläche, die der Benutzer auswählen kann, indem er einfach die EINGABETASTE drückt, wenn keine andere Drucktaste im Dialogfeld den Eingabefokus hat.

Wenn der Benutzer auf eine Drucktaste klickt, erhält er den Tastaturfokus. Das System sendet dem übergeordneten Fenster der Schaltfläche eine WM_COMMAND Nachricht, die den BN_CLICKED Benachrichtigungscode enthält.

Die geteilte Schaltfläche ist eine besondere Art der Drucktaste, die in Windows Vista und Version 6.00 eingeführt wurde. Eine geteilte Schaltfläche ist in zwei Teile unterteilt. Der Standard Teil funktioniert wie ein regulärer oder standardmäßiger Druckknopf. Der zweite Teil hat einen Pfeil, der nach unten zeigt. In der Regel wird ein Menü angezeigt, wenn auf den Pfeil geklickt wird.

Eine geteilte Schaltfläche hat das format BS_SPLITBUTTON oder das BS_DEFSPLITBUTTON Format, wenn es sich um die Standardschaltfläche in einem Dialogfeld handelt. Sie können die Darstellung der Schaltfläche ändern, indem Sie die BCM_SETSPLITINFO Nachricht oder das entsprechende Button_SetSplitInfo Makro verwenden.

Wenn der Benutzer auf den Standard Teil der Geteilten Schaltfläche klickt, sendet er eine BN_CLICKED Benachrichtigung genau wie eine normale Drucktaste. Wenn der Benutzer jedoch auf den Pfeil nach unten klickt, sendet er eine BCN_DROPDOWN Benachrichtigung. Es liegt in der Verantwortung der Anwendung, ein Menü als Reaktion auf BCN_DROPDOWN anzuzeigen.

Windows Vista und Version 6.00 führten auch eine andere Art von Drucktaste ein, den Befehlslink. Visuell unterscheidet sich ein Befehlslink stark von einer normalen Schaltfläche, verfügt aber über die gleiche Funktionalität. Ein Befehlslink zeigt in der Regel ein Pfeilsymbol, eine Textzeile und zusätzlichen Text in einer kleineren Schriftart an.

Optionsfelder

Ein Optionsfeld (auch Optionsschaltfläche genannt) besteht aus einer runden Schaltfläche und einer durch die Anwendung definierten Bezeichnung, einem Symbol oder einer Bitmap, die eine Auswahl angibt, die der Benutzer durch Auswählen der Schaltfläche treffen kann. Eine Anwendung verwendet in der Regel Optionsfelder in einem Gruppenfeld, um dem Benutzer die Auswahl einer Reihe verwandter, sich gegenseitig ausschließenden Optionen zu ermöglichen.

Ein Optionsfeld kann eine von zwei Formaten sein: standard oder automatisch, wie durch die Formatkonstanten BS_RADIOBUTTON und BS_AUTORADIOBUTTON definiert. Jede Formatvorlage kann zwei Überprüfungszustände annehmen: aktiviert (ein Punkt in der Schaltfläche) oder gelöscht (kein Punkt in der Schaltfläche).

Wenn der Benutzer einen zustand auswählt, erhält das Optionsfeld den Tastaturfokus. Das System sendet dem übergeordneten Fenster der Schaltfläche eine WM_COMMAND Nachricht mit dem BN_CLICKED Benachrichtigungscode. Das übergeordnete Fenster muss diese Meldung nicht verarbeiten, wenn sie von einem automatischen Optionsfeld stammt, da das System automatisch den Überprüfungsstatus für diese Formatvorlage festlegt. Das übergeordnete Fenster sollte die Nachricht jedoch behandeln, wenn sie von einem nicht automatischen Optionsfeld stammt, da das übergeordnete Fenster für das Festlegen des Überprüfungszustands für diese Formatvorlage zuständig ist. Unabhängig vom Optionsfeldstil streicht das System die Schaltfläche automatisch neu, wenn sich ihr Zustand ändert.

Optionsfelder sind in Gruppen angeordnet, und es kann jederzeit nur eine Schaltfläche in der Gruppe aktiviert werden. Wenn das WS_GROUP-Flag für ein beliebiges Optionsfeld festgelegt ist, ist diese Schaltfläche die erste Schaltfläche in einer Gruppe, und alle Schaltflächen, die ihr sofort in der Registerkartenreihenfolge folgen (aber selbst nicht über das WS_GROUP-Flag verfügen), sind Teil der Gruppe. Wenn keine Optionsfelder über das Flag WS_GROUP verfügen, werden alle Optionsfelder im Dialogfeld als einzelne Gruppe behandelt.

Die Anwendung kann mithilfe der IsDlgButtonChecked-Funktion feststellen, ob ein Optionsfeld aktiviert ist.

Referenz

Schaltflächenstile

Konzept

Verwenden von Schaltflächen