Bislang wurde der Begriff Fensterobjekt ohne eine formale Definition verwendet. In der Hierarchie der SWT-Klassen ist die Klasse Widget (= Fensterobjekt) die abstrakte Klasse für alle UI-Objekte, die in ein anderes Fensterobjekt gestellt werden können. Ein Steuerelement (Klasse Control) ist ein Fensterobjekt, dem in der zu Grunde liegenden Plattform ein Gegenstück entspricht (angegeben durch eine Fensterkennung des Betriebssystems).
Man wird leicht verleitet, die Begriffe Fensterobjekt 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 sich die Hierarchie der SWT-Fensterobjekte genauer ansehen, werden Sie feststellen, dass ein Steuerelement ein Objekt ist, das Sie erstellen und in der Eltern-/Kindbaumstruktur der Fensterobjekte beliebig platzieren können. Fensterobjekte, die keine Steuerelemente sind, sind normalerweise spezialisiertere Benutzerschnittstellenobjekte, die nur für bestimmte Typen von Eltern 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 Fensterobjekte 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.)
Fensterobjekt
|
Zweck
|
Darstellungen
|
Ereignisse |
---|---|---|---|
Ein auswählbares Steuerelement, das einen Hinweis ausgibt, wenn es gedrückt und/oder losgelassen wird. |
BORDER, ARROW, CHECK, PUSH,
RADIO, TOGGLE, FLAT, LEFT, RIGHT, CENTER
|
Dispose, Control*, Selection | |
Ein Steuerelement für ein kombiniertes Anzeigenobjekt, 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
|
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ählt oder auf Wunsch einen neuen Wert in ein Textfeld eingibt, das bearbeitet werden 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 Fensterobjekte enthalten kann. |
BORDER, H_SCROLL, V_SCROLL
|
Dispose, Control* | |
Ein Steuerelement für ein kombiniertes Anzeigenobjekt, 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. |
|
Dispose | |
Ein Steuerelement für ein kombiniertes Anzeigenobjekt, das andere Fensterobjekte gruppiert und diese mit einem Rahmen und/oder einem Anzeigenelment 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 (with HORIZONTAL, SHADOW_IN,
SHADOW_OUT, 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, 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, SMOOTH, HORIZONTAL,
VERTICAL
|
Dispose, Control* | |
Ein auswählbares Steuerelement, mit dem der Benutzer die Begrenzung des Größensteuerfelds im Elternfenster variabel ziehen kann. Wird verwendet, damit Benutzer die Größe von Kindfensterobjekten ä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. Elternelemente 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 Steuerelement für ein kombiniertes Anzeigenobjekt, 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, H_SCROLL, V_SCROLL,
MULTI, SINGLE, READ_ONLY, WRAP
|
Dispose, Control*, DefaultSelection, Modify, Verify | |
Ein Steuerelement für ein kombiniertes Anzeigenobjekt, das das Layout von auswählbaren Symbolleistenelementen unterstützt. |
BORDER, FLAT, WRAP, RIGHT,
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. |
|
Dispose, Move | |
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 Steuerelement (Control) übernommene Ereignisse: FocusIn, FocusOut, Help, KeyDown, KeyUp, MouseDoubleClick, MouseDown, MouseEnter, MouseExit, MouseHover, MouseUp, MouseMove, Move, Paint, Resize