| Die Standard-Steuerelemente stellen ein Minimum an Benutzerfreundlichkeit unter Windows zur Verfügung, erweiterte Steuerelemente, wie z.B. ListView oder ProgressBar, fallen unter die erweiterten Steuerelemente. Trotzdem werden die erweiterten Steuerelemente als Common Controls bezeichnet. Abbildung 4: Möglichkeiten der Gestaltung von Standard-Steuerelementen CommandButton (Befehlsschaltfläche) Buttons spielen neben Eingabefeldern eine der wichtigsten Rollen bei der Kommunikation zwischen Mensch und Computer. Daher ist bei ihrem Einsatz besondere Sorgfalt erforderlich. Unter Windows können drei verschiedene Arten von Buttons eingesetzt werden: - Default-Button: Auch wenn eine TextBox auf dem Formular den Fokus hat, wird dieser Button beim Drücken der Eingabetaste ausgelöst.
- Cancel-Button: Wenn im Formular die Escape-Taste gedrückt wird, wird dieser Button ausgelöst.
- Normaler Button: Dieser wird nur ausgelöst, wenn entweder seine Zugriffstaste gedrückt wird oder wenn er den Fokus besitzt und die Eingabe- oder Leertaste vom Benutzer gedrückt wird.
Pro Fenster ist die Anzahl der Default-Buttons und Cancel-Buttons klarerweise auf einen je Art beschränkt, die Anzahl der normalen Buttons ist aber nicht eingeschränkt. Normalerweise wird bei "OK"-Buttons die Eigenschaft des Default-Buttons und bei "Abbrechen"-Buttons die der Cancel-Eigenschaft gesetzt. Will der Benutzer nun abbrechen, ohne etwas zu übernehmen, genügt das Drücken der Escape-Taste, zum Übernehmen und Schliessen des Dialogs das Drücken der Eingabetaste. Ausserdem kann in der Beschriftung jeder Schaltfläche auch eine Zugriffstaste durch voranstellen des Zeichens & definiert werden. Der auf dieses Zeichen folgende Buchstabe wird dann unterstrichen angezeigt. Grafische Eigenschaften In Windows sind Buttons (ebenso wie CheckBoxen und OptionButtons) Instanzen der BUTTON-Klasse. Durch setzen der jeweiligen Style-Bits kann dann eingestellt werden, um welches Control es sich handeln soll. Setzen wir nun ein Button-Steuerelement ein, so kann dies mehrere verschiedene Style-Eigenschaften besitzen: - Text: Text kann mit verschiedenen Ausrichtungsarten auf dem Button angezeigt werden.
- Grafik: Eine Bitmap oder ein Icon kann auf dem Button angezeigt werden.
- OwnerDrawn: Das Programm zeichnet den Button selbst; auf diese Weise können auch vollgrafische Buttons realisiert werden.
Optimaler Einsatz Buttons sollten normalerweise 23 Pixel hoch und etwa 89 Pixel breit sein. Dazu sollte als Schriftart die Systemschriftart und als Schriftgrösse die Systemschriftgrösse angegeben werden. Mit diesen Einstellungen sehen Buttons optimal aus. Die Breite sollte je nach Länge der Beschriftung angepasst werden, sodass der freibleibende Abstand rechts und links ungefähr gleich gross ist, weiters sollte der erste Buchstabe auf dem Button gross geschrieben werden. Von der Verwendung von Buttons mit mehrzeiligem Text wird abgeraten. Um ein geschlossenes Aussehen des Formulars zu erhalten, ist es vorteilhaft, die Breite aller Buttons anzugleichen, dazu ist es aber auch notwendig, dass nach Möglichkeit ungefähr gleich lange Beschriftungen gewählt werden. Standard-Buttons (Default- und Cancel-Buttons sowie Buttons zum Übernehmen von Einstellungen etc.) sollten im Normalfall am unteren Rand des Formulars nebeneinander plaziert werden. Bei grafischen Buttons ist es oft störend, wenn ein Fokus-Rechteck angezeigt wird, sobald sie den Fokus erhalten. Dieses Verhalten kann aber unterbunden werden, indem man den Button subclasst und dabei die WM_SETFOCUS nicht an die originale Fensterprozedur weiterleitet. Damit ist es auch möglich, nicht flache Werkzeugleisten-Buttons durch normale Button-Steuerelemente zu ersetzen, wodurch eventuell einige Abhängigkeiten nicht mehr notwendig sind. CheckBox (Kontrollkästchen) und OptionButton (Optionsfeld) In Windows handelt es sich bei CheckBoxen und OptionButtons um Buttons, die sich durch Setzen der entsprechenden Style-Bits anders verhalten und auch ein anderes Aussehen haben. CheckBoxen stellen eine Möglichkeit dar, die Auswahl keiner, einer oder mehrerer Optionen zu realisieren, wohingegen bei OptionButtons immer genau eine von mehreren Optionen gewählt werden kann. Kontrollkästchen sollten daher nicht für Eigenschaften verwendet werden, die sich gegenseitig ausschliessen. Folgende Grafik zeigt einen Ausschnitt aus dem Zeichenformatierungs-Dialog von Microsoft FrontPage 2000. Dabei ist zu beanstanden, dass CheckBoxen für sich ausschliessende Optionen verwendet wurden, in diesem Fall wären OptionButtons oder eine ComboBox die bessere Wahl gewesen: Abbildung 5: Ausschliessende Optionen mit CheckBox Optionsfelder können zu Gruppen zusammengefasst werden, bei denen immer genau eine Option gewählt werden kann. Bei Platzmangel kann anstelle mehrerer OptionButtons auch eine ComboBox verwendet werden. TextBox (Eingabefeld) Das TextBox-Steuerelement dient zur Eingabe von alphanumerischen Daten über die Tastatur oder die Zwischenablage an ein Programm. Eingabefelder können in mehreren Varianten auftreten: - Einzeilig oder mehrzeilig, diese Eigenschaft kann nur beim Erstellen einer TextBox gesetzt werden.
- Bildlaufleisten können optional eingeblendet werden.
- Die maximale Textlänge kann gesetzt werden.
- Das TextBox-Steuerelement kann gesperrt werden, d.h. der Benutzer kann keine Änderungen des Inhalts vornehmen.
Unter Windows 9x und Windows Me war die maximale Länge des Inhalts einer TextBox auf 64 KB beschränkt, diese Einschränkung fällt aber unter den neueren, auf Windows NT basierenden Versionen von Windows weg. Optimaler Einsatz Gleich wie beim Button-Steuerelement gilt auch hier, dass die Grösse und Schriftart nach Möglichkeit an das System angepasst werden sollte. Abbildung 6: Falsche Höhe einer TextBox Der Ausschnitt oben wurde dem Datei-Eigenschaftsdialog von Windows 2000 entnommen. Es ist hier fraglich, warum diese TextBox so hoch eingestellt wurde. Abbildung 7: Richtige Höhe einer TextBox Der Teil eines "Öffnen"-Dialogs zeigt ein Beispiel für die gute Wahl der Höhe einer TextBox. Dabei wird der Text vertikal zentriert ausgerichtet, wobei auch alle Ober- und Unterlängen der Zeichen ohne Probleme lesbar sind. Als Hintergrundfarbe sollte die Fensterhintergrundfarbe von Windows verwendet werden, auch ein Rahmen sollte gesetzt werden. Dadurch ist die Funktionalität dieses Steuerelements klar ersichtlich und eine Verwechslung mit Labels nicht mehr möglich - ein Steuerelement mit diesem Aussehen kann eindeutig als Feld zur Eingabe erkannt werden. Bei gesperrten TextBoxen sollte als Hintergrundfarbe die Systemfarbe für die Button-Oberfläche verwendet werden. Eventuell kann auch der Rahmen ausgeblendet werden. Dann dient die TextBox nur mehr zur Ausgabe von Daten, die aber vom Benutzer in die Zwischenablage kopiert werden können. RichTextBox (Rich-Edit) Die RichTextBox stellt eine Erweiterung der normalen TextBox dar. Mit der RichtTextBox ist es möglich, mittels des Rich-Text-Formats formatierten Text anzuzeigen, wobei auch Grafiken und Hyperlinks unterstützt werden. Ausserdem stellte die RichTextBox unter früheren Windows-Versionen eine Möglichkeit dar, mehr als 64 KB grosse Dateien anzuzeigen, da keine Grössenbeschränkung vorlag. Abbildung 8: Eine RichTextBox ScrollBars (Bildlaufleisten) ScrollBars dienen zur Wahl eines Wertes innerhalb eines definierten Bereichs, wobei die Auflösung eingestellt werden kann. Diese Funktionalität kann entweder verwendet werden, um einen übergrossen Inhalt damit zu scrollen oder um einen Slider (Schieberegler) mit einfachen Mitteln zu imitieren. Einigen Steuerelemente und Formularen können durch setzen von Style-Bits Scrollleisten hinzugefügt werden. Optimaler Einsatz Es sollte beachtet werden, dass die ScrollBars die standardmässige Breite bzw. Höhe besitzen. Diese kann über die API-Funktion GetSystemMetrics ermittelt werden. ListBox (Listenfeld) ListBoxen werden verwendet, um dem Benutzer die Möglichkeit zu geben, aus einer Liste ein oder mehrere Elemente auszuwählen. Der Einsatz einer ListBox ist dann vorteilhaft, wenn... - Der Benutzer die Möglichkeit haben soll, aus vielen Optionen mehrere auszuwählen. In diesem Fall kann die ListBox anstelle von mehreren CheckBoxen eingesetzt werden.
- Der Einsatz ist auch sinnvoll, wenn es sehr viele Auswahlmöglichkeiten gibt. An dieser Stelle kann die ListBox als Ersatz von OptionButtons verwendet werden.
Abbildung 9: Eine ListBox ComboBox (Kombinationsfeld, DropDown-Listenfeld) Die ComboBox stellt eine Alternative zu OptionButtons dar. Sie wird vor Allem dann in Anwendungen eingesetzt, wenn sehr viele Optionen zur Auswahl zur Verfügung stehen. Bei einer Auswahl mit mehr als vier Möglichkeiten stellt die ComboBox die bessere Alternative zu OptionButtons dar. Ein Kuriosum an diesem Steuerelement ist sein Name Kombinationsfeld: Was hat ein Auswahlfeld, bei dem immer nur eine Option gewählt werden kann, mit Kombinationen zu tun? Der Ausdruck wäre besser für ListBoxen, die Mehrfachauswahl erlauben. Label (Beschriftung) In der Windows-Terminologie werden die Labels aus Visual Basic auch als Static bezeichnet, weil normale Labels von der Klasse STATIC sind. Statics sind sehr vielseitige Steuerelemente, ganz im Gegensatz zu ihrem Namen. Es ist möglich, Text, Grafiken und sogar Animationen anzuzeigen. Bei den VB-eigenen Labels handelt es sich um Regions. Dadurch kann der Speicherbedarf reduziert werden, allerdings auf Kosten der Funktionalität. |