Bisher wurde der Begriff Widget ohne eine formale Definition verwendet. In der Hierarchie der SWT-Klassen ist die Klasse Widget die abstrakte Klasse für alle UI-Objekte, die in ein anderes Widget gestellt werden können. Ein Steuerelement (Control) ist ein Widget, dem in der zu Grunde liegenden Plattform ein Gegenstück entspricht, angegeben durch eine Fensterkennung des Betriebssystems.
Man wird leicht verleitet, die Begriffe 'Widget' und 'Steuerelement' synonym zu verwenden. Obwohl die Unterscheidung in der SWT-Implementierung wichtig ist, besteht aus Sicht einer Anwendung kein Grund, besonders auf diesen Unterschied einzugehen. Wenn Sie sicht die Hierarchie der SWT-Widgets genauer ansehen, werden Sie feststellen, dass ein Steuerelement ein Objekt ist, das Sie erstellen und in der übergeordneten bzw. untergeordneten Widget-Baumstruktur beliebig platzieren können. Widgets, die keine Steuerelemente sind, sind normalerweise spezialisiertere Benutzerschnittstellenobjekte, die nur für bestimmte Typen von übergeordneten Elementen erstellt werden können.
In der SWT-API-Referenz und den Beispielen finden Sie eine Vielzahl von Informationen zu den unterschiedlichen Steuerelementen und ihrer Verwendung. Das Paket org.eclipse.swt.widgets definiert die Kerngruppe der Widgets in SWT. Die folgende Tabelle fasst die konkreten Typen von Steuerelementen zusammen, die in diesem Paket zur Verfügung gestellt werden, und enthält Angaben zu ihrer Verwendung. (Abstrakte Klassen sind in dieser Liste nicht enthalten.)
Widget
|
Zweck
|
Darstellungen
|
Ereignisse |
---|---|---|---|
Ein auswählbares Steuerelement, das einen Hinweis ausgibt, wenn es gedrückt und/oder losgelassen wird. |
BORDER, CHECK, PUSH,
RADIO, TOGGLE, FLAT, LEFT, RIGHT, CENTER, ARROW (mit UP, DOWN)
|
Dispose, Control*, Selection | |
Ein zusammengesetztes Steuerelement, das als Oberfläche zum Zeichnen von willkürlicher Grafik dient. Wird häufig verwendet, um angepasste Steuerelemente zu implementieren. |
BORDER, H_SCROLL, V_SCROLL,
NO_BACKGROUND, NO_FOCUS, NO_MERGE_PAINTS, NO_REDRAW_RESIZE, NO_RADIO_GROUP
|
Dispose, Control* | |
Ein I-Balken, der normalerweise als Einfügemarke für Text verwendet wird. |
|
Dispose | |
Ein auswählbares Steuerelement, mit dem der Benutzer in einer Liste von Zeichenfolgen eine Zeichenfolge auswählen oder auf Wunsch einen neuen Wert in ein bearbeitbares Textfeld eingeben kann. Wird häufig verwendet, wenn eingeschränkter Platz eine Dialogfensterdarstellung der verfügbaren Zeichenfolgen erforderlich macht und kein ganzes Auswahllistenfeld verwendet werden kann. |
BORDER, DROP_DOWN, READ_ONLY,
SIMPLE
|
Dispose, Control*, DefaultSelection, Modify, Selection | |
Ein Steuerelement, das andere Widgets enthalten kann. |
BORDER, H_SCROLL, V_SCROLL
|
Dispose, Control* | |
Ein zusammengesetztes Steuerelement, in dem der Benutzer die in der Leiste enthaltenen Elemente dynamisch neu platzieren kann. |
BORDER
|
Dispose, Control* | |
Ein auswählbares Benutzerschnittstellenobjekt, das einen dynamisch platzierbaren Bereich einer Leiste darstellt. |
DROP_DOWN
|
Dispose | |
Ein zusammengesetztes Steuerelement, das andere Widgets gruppiert und diese mit einem Rahmen und/oder Bezeichnung umgibt. |
BORDER, SHADOW_ETCHED_IN,
SHADOW_ETCHED_OUT, SHADOW_IN, SHADOW_OUT, SHADOW_NONE
|
Dispose, Control* | |
Ein nicht auswählbares Steuerelement, das eine Zeichenfolge oder ein Image anzeigt. |
BORDER, CENTER, LEFT, RIGHT,
WRAP, SEPARATOR (mit HORIZONTAL, SHADOW_IN, SHADOW_OUT, SHADOW_NONE, VERTICAL)
|
Dispose, Control* | |
Ein auswählbares Steuerelement, mit dem der Benutzer eine oder mehrere Zeichenfolgen in einer Liste mit Zeichenfolgen auswählen kann. |
BORDER, H_SCROLL, V_SCROLL,
SINGLE, MULTI
|
Dispose, Control*, Selection, DefaultSelection | |
Ein Benutzerschnittstellenobjekt, das Menüoptionen enthält. |
BAR, DROP_DOWN, NO_RADIO_GROUP, POP_UP
|
Dispose, Help, Hide, Show | |
MenuItem | Ein auswählbares Benutzerschnittstellenobjekt, das eine Option in einem Menü darstellt. | CHECK, CASCADE, PUSH, RADIO, SEPARATOR | Dispose, Arm, Help, Selection |
Ein nicht auswählbares Steuerelement, das für den Benutzer den Status einer Operation anzeigt, normalerweise in Form eines Balkendiagramms. |
BORDER, INDETERMINATE, SMOOTH, HORIZONTAL,
VERTICAL
|
Dispose, Control* | |
Ein auswählbares Steuerelement, mit dem der Benutzer die Begrenzung des Größensteuerfelds im übergeordneten Fenster variabel ziehen kann. Wird verwendet, damit Benutzer die Größe von untergeordneten Widgets ändern können, indem Sie die Trennlinie neu platzieren. |
BORDER, HORIZONTAL, VERTICAL
|
Dispose, Control*, Selection | |
Ein auswählbares Steuerelement, das einen Bereich von numerischen Werten darstellt. |
BORDER, HORIZONTAL, VERTICAL
|
Dispose, Control*, Selection | |
ScrollBar | Ein auswählbares Steuerelement, das einen Bereich von positiven numerischen Werten darstellt. Wird in einem Element "Composite" mit der Darstellung V_SCROLL und/oder H_SCROLL verwendet. | HORIZONTAL, VERTICAL | Dispose, Selection |
Ein Fenster, das durch den Fenstermanager des Betriebssystems verwaltet wird. Übergeordnete Elemente von Shells können Anzeigen (Shells der höchsten Ebene) oder andere Shells (sekundäre Shells) sein. |
BORDER, H_SCROLL, V_SCROLL,
CLOSE, MIN, MAX, NO_TRIM, RESIZE, TITLE (siehe auch SHELL_TRIM, DIALOG_TRIM)
|
Dispose, Control*, Activate, Close, Deactivate, Deiconify, Iconify | |
Ein auswählbares Steuerelement, das einen Bereich von numerischen Werten darstellt. Ein Schiebefeld unterscheidet sich von einer Skala durch einen verschiebbaren Anzeiger, der den aktuellen Wert am Bereich ausrichten kann. |
BORDER, HORIZONTAL, VERTICAL
|
Dispose, Control*, Selection | |
Ein zusammengesetztes Steuerelement, das Seiten gruppiert, die vom Benutzer über beschriftete Registerkarten ausgewählt werden können. |
BORDER
|
Dispose, Control*, Selection | |
TabItem | Ein auswählbares Benutzerschnittstellenobjekt, das einer Registerkarte für eine Seite in einem Ordner mit Registerkarten entspricht. | Dispose | |
Ein auswählbares Steuerelement, das eine Liste von Tabelleneinträgen anzeigt, die durch den Benutzer ausgewählt werden können. Die Einträge werden in Zeilen dargestellt, in denen mehrere Spalten die einzelnen Aspekte der Einträge darstellen. |
BORDER, H_SCROLL, V_SCROLL,
SINGLE, MULTI, CHECK, FULL_SELECTION, HIDE_SELECTION
|
Dispose, Control*, Selection, DefaultSelection | |
TableColumn | Ein auswählbares Benutzerschnittstellenobjekt, das eine Spalte in einer Tabelle darstellt. | LEFT, RIGHT, CENTER | Dispose, Move, Resize, Selection |
TableItem | Ein auswählbares Benutzerschnittstellenobjekt, das einen Eintrag in einer Tabelle darstellt. | Dispose | |
Ein Steuerelement, das der Benutzer bearbeiten kann, indem er Text eingibt. |
BORDER, SINGLE, READ_ONLY, LEFT, CENTER, RIGHT, WRAP, MULTI (mit H_SCROLL, V_SCROLL)
|
Dispose, Control*, DefaultSelection, Modify, Verify | |
Ein zusammengesetztes Steuerelement, das das Layout von auswählbaren Symbolleistenelementen unterstützt. |
BORDER, FLAT, WRAP, RIGHT, SHADOW_OUT
HORIZONTAL, VERTICAL
|
Dispose, Control*, | |
ToolItem | Ein auswählbares Benutzerschnittstellenobjekt, das ein Element in einer Symbolleiste darstellt. | PUSH, CHECK, RADIO, SEPARATOR, DROP_DOWN | Dispose, Selection |
Ein Benutzerschnittstellenobjekt, mit dem variabel veränderbare Rechtecke implementiert werden. |
LEFT, RIGHT, UP, DOWN, RESIZE
|
Dispose, Move, Resize | |
Ein auswählbares Steuerelement, das eine hierarchische Liste von Baumstrukturelementen anzeigt, die durch den Benutzer ausgewählt werden können. |
BORDER, H_SCROLL, V_SCROLL,
SINGLE, MULTI, CHECK
|
Dispose, Control*, Selection, DefaultSelection, Collapse, Expand | |
TreeItem | Ein auswählbares Benutzerschnittstellenobjekt, das eine Hierarchie von Elementen in einer Baumstruktur darstellt. | Dispose |
Control* = Aus einem Ereignis Control übernommene Ereignisse: FocusIn, FocusOut, Help, KeyDown, KeyUp, MouseDoubleClick, MouseDown, MouseEnter, MouseExit, MouseHover, MouseUp, MouseMove, Move, Paint, Resize