16.11.2013 Aufrufe

Programmieren in Java - HostFiXX.de

Programmieren in Java - HostFiXX.de

Programmieren in Java - HostFiXX.de

MEHR ANZEIGEN
WENIGER ANZEIGEN

Erfolgreiche ePaper selbst erstellen

Machen Sie aus Ihren PDF Publikationen ein blätterbares Flipbook mit unserer einzigartigen Google optimierten e-Paper Software.

<strong>Programmieren</strong> <strong>in</strong> <strong>Java</strong><br />

Die GridBagLayout-Klasse und die GridBagConstra<strong>in</strong>t-Klasse<br />

Die Klasse GridBagLayout ermöglicht die Anordnung <strong>de</strong>r Komponenten <strong>in</strong> e<strong>in</strong>em<br />

rasterähnlichen Layout. Zusätzlich zum GridLayout kann kontrolliert wer<strong>de</strong>n: Die<br />

Werte e<strong>in</strong>zelner Zellen im Raster, die Proportionen zwischen Zeilen und Spalten<br />

sowie die Anordnung von Komponenten <strong>in</strong>nerhalb <strong>de</strong>r Zellen im Raster. Zur<br />

Erstellung e<strong>in</strong>es GridLayout dienen zwei Klassen:<br />

- GridBagLayout, die <strong>de</strong>n Layoutmanager bereitstellt<br />

- GridBagConstra<strong>in</strong>ts, die die Eigenschaften je<strong>de</strong>r Komponente im Raster bestimmt.<br />

Die GridBagLayout-Klasse ermöglicht e<strong>in</strong>er Komponente auch die Belegung von<br />

mehr als e<strong>in</strong>er Zelle. Der gesamte Bereich, <strong>de</strong>n die Komponente e<strong>in</strong>nimmt, wird<br />

„display area“ genannt. Bevor e<strong>in</strong>em Conta<strong>in</strong>er e<strong>in</strong>e Komponente h<strong>in</strong>zugefügt<br />

wird, müssen GridBagLayout Vorschläge unterbreitet wer<strong>de</strong>n, wo die Komponente<br />

h<strong>in</strong>gestellt wer<strong>de</strong>n soll. Die GridBagConstra<strong>in</strong>t-Klasse besitzt verschie<strong>de</strong>ne<br />

Variable zur Steuerung <strong>de</strong>r Anordnung <strong>de</strong>r Komponenten:<br />

- die Variablen gridx und gridy (Koord<strong>in</strong>aten <strong>de</strong>r Zelle <strong>in</strong> <strong>de</strong>r die nächste Komponente plaziert<br />

wer<strong>de</strong>n soll). Die obere l<strong>in</strong>ke Ecke von GridBagLayout liegt bei (0,0), <strong>de</strong>r Standardwert ist<br />

GridBagConstra<strong>in</strong>ts.RELATIVE. Für gridx ist das die erste rechte Zelle neben <strong>de</strong>r letzten<br />

h<strong>in</strong>zugefügten Komponente. Für gridy ist es genau die Zelle, die unterhalb <strong>de</strong>r letzten<br />

Komponente h<strong>in</strong>zugefügt wur<strong>de</strong>.<br />

- die Variablen gridwidth und gridheight bestimmen, wie viele Zellen hoch und breit e<strong>in</strong>e<br />

Komponente se<strong>in</strong> sollte (Standardwert ist 1). Der Wert GridBagConstra<strong>in</strong>ts.REMAINDER für<br />

gridwidth bestimmt, daß e<strong>in</strong>e Komponente die letzte <strong>in</strong> <strong>de</strong>r Spalte se<strong>in</strong> sollte.<br />

- Die Variable fill gibt an, welche Dimension e<strong>in</strong>er Komponente sich verän<strong>de</strong>rn soll, wenn e<strong>in</strong>e<br />

Komponente kle<strong>in</strong>er als <strong>de</strong>r Anzeigebereich ist. Gültige Werte s<strong>in</strong>d: NONE, BOTH, HORIZONTAL<br />

und VERTICAL. „GridBagConstra<strong>in</strong>ts.BOTH“ sorgt für e<strong>in</strong>e Streckung <strong>de</strong>r Komponenten <strong>in</strong><br />

bei<strong>de</strong>n Richtungen so, daß sie <strong>de</strong>n Anzeigebereich voll ausfüllen.<br />

- anchor wird e<strong>in</strong>gesetzt, wenn die Komponente kle<strong>in</strong>er als ihr Anzeigebereich ist. Sie zeigt an, wo<br />

die Komponente <strong>in</strong>nerhalb <strong>de</strong>s Anzeigebereichs plaziert wer<strong>de</strong>n soll. Der Standardwert ist<br />

„GridBagConstra<strong>in</strong>ts.CENTER“. Er gibt an, welche Komponente im „Zentrum <strong>de</strong>s<br />

Anzeigebereichs“ stehen soll. Die an<strong>de</strong>ren Komponenten s<strong>in</strong>d Kompasspunkte:<br />

GridBagConstra<strong>in</strong>ts.NORTH, GridBagConstra<strong>in</strong>ts.NORTHEAST etc.<br />

- Die Variable weightx und weighty <strong>de</strong>f<strong>in</strong>ieren die Gewichtung für freien Raum <strong>in</strong>nerhalb e<strong>in</strong>es<br />

Conta<strong>in</strong>ers und bestimmen die relative Größe <strong>de</strong>r Komponenten. E<strong>in</strong> Komponente mit e<strong>in</strong>em Wert<br />

343

Hurra! Ihre Datei wurde hochgeladen und ist bereit für die Veröffentlichung.

Erfolgreich gespeichert!

Leider ist etwas schief gelaufen!