Sie wollen auch ein ePaper? Erhöhen Sie die Reichweite Ihrer Titel.
YUMPU macht aus Druck-PDFs automatisch weboptimierte ePaper, die Google liebt.
8.6 Layouts<br />
vom breitesten GUI-Element bestimmt wird. Typische Einsatzfälle für<br />
diese Layout-Klasse sind z.B. Werkzeugleisten, bei denen die einzelnen<br />
Tasten unmittelbar aneinander liegen, oder auch der Fall, wenn ein<br />
einzelnes GUI-Element ein Composite komplett ausfüllt.<br />
Normalerweise werden die GUI-Elemente in horizontaler Richtung<br />
aneinander positioniert, allerdings lässt sich durch die Zuweisung<br />
der Stilkonstante <strong>SWT</strong>.VERTICAL an das type-Feld des Layouts auch eine<br />
vertikale Ausrichtung erzwingen:<br />
FillLayout fillLayout = new FillLayout();<br />
fillLayout.type = <strong>SWT</strong>.VERTICAL;<br />
composite.setLayout(fillLayout);<br />
new Button(composite, <strong>SWT</strong>.RADIO).setText("One");<br />
new Button(composite, <strong>SWT</strong>.RADIO).setText("Two");<br />
new Button(composite, <strong>SWT</strong>.RADIO).setText("Three");<br />
Bei FillLayout besteht keine Möglichkeit, die Größe der einzelnen<br />
GUI-Elemente individuell zu setzen.<br />
8.6.3 Die Klasse RowLayout<br />
Ähnlich wie beim FillLayout ordnet das RowLayout die GUI-Elemente<br />
in einer Reihe an. Dabei gibt es jedoch zusätzliche Optionen:<br />
type wie bei FillLayout<br />
Ist dieses Feld auf den Wert true gesetzt (Standardeinstellung), so werden<br />
wrap<br />
überzählige GUI-Elemente in eine neue Reihe umgebrochen, wenn der Platz nicht<br />
ausreicht.<br />
pack<br />
justify<br />
marginLeft<br />
marginTop<br />
marginRight<br />
marginBottom<br />
spacing<br />
<strong>Das</strong> folgende Beispiel zeigt, wie die Felder einer RowLayout-Instanz<br />
gesetzt werden können:<br />
191<br />
Ist dieses Feld auf den Wert true gesetzt (Standardeinstellung), so werden alle<br />
GUI-Elemente in ihrer natürlichen Größe und so weit links wie möglich dargestellt.<br />
Andernfalls füllen die GUI-Elemente den kompletten verfügbaren Platz aus, ähnlich<br />
wie bei FillLayout.<br />
Ist dieses Feld auf den Wert true gesetzt, so werden alle GUI-Elemente gleichmäßig<br />
über den verfügbaren Raum verteilt. Die Standardeinstellung ist »false«.<br />
Diese Felder kontrollieren die Größe des Randbereichs in Pixeln.<br />
Dieses Feld kontrolliert den Minimalabstand zwischen<br />
GUI-Elementen in Pixeln.