20.08.2012 Aufrufe

8 Das SWT

8 Das SWT

8 Das SWT

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.

Tree-Instanzen erzeugen folgende Ereignistypen:<br />

SelectionEvent<br />

TreeEvent<br />

8.5 Widgets<br />

Bei einem Doppelklick oder Drücken der Enter-Taste wird<br />

die SelectionListener-Methode widgetDefaultSelected()<br />

aufgerufen.<br />

Wird ein Knoten ausgewählt, so wird die Methode<br />

widgetSelected() aufgerufen.<br />

Wird ein Knoten expandiert, wird die Methode treeExpanded()<br />

der TreeListener-Instanz aufgerufen. Wird ein Knoten<br />

kollabiert, wird treeCollapsed() aufgerufen. Der entsprechende<br />

Knoten wird im Feld item des TreeEvent-Objekts<br />

übergeben.<br />

Die einzelnen Baumknoten werden als TreeItem-Instanzen erzeugt.<br />

Dabei wird dem TreeItem()-Konstruktor entweder der Baum oder ein<br />

anderer Baumknoten als Argument übergeben. Textinhalte für TreeItem-Instanzen<br />

können mit setText() gesetzt werden, wobei mit set-<br />

Font() die Schriftart des Textes gesetzt werden kann. Zusätzlich zum<br />

Text kann mit setImage() jeder TreeItem-Instanz eine Grafik zugeordnet<br />

werden. Wie bei Buttons (Abschnitt 8.5.6) sollten alle Image-Instanzen<br />

wieder freigegeben werden, wenn sie nicht mehr benötigt werden.<br />

Der folgende Code erzeugt einen einfachen Baum mit drei Knoten,<br />

wobei der erste Knoten zwei Kindknoten hat:<br />

final Tree tree = new Tree(composite,<strong>SWT</strong>.SINGLE);<br />

// Oberste Knotenebene erzeugen<br />

final TreeItem node1 = new TreeItem(tree,<strong>SWT</strong>.NULL);<br />

node1.setText("Knoten 1");<br />

final TreeItem node2 = new TreeItem(tree,<strong>SWT</strong>.NULL);<br />

node2.setText("Knoten 2");<br />

final TreeItem node3 = new TreeItem(tree,<strong>SWT</strong>.NULL);<br />

node3.setText("Knoten 3");<br />

// Zweite Knotenebene erzeugen<br />

final TreeItem node11 = new TreeItem(node1,<strong>SWT</strong>.NULL);<br />

node11.setText("Knoten 1.1");<br />

final TreeItem node12 = new TreeItem(node1,<strong>SWT</strong>.NULL);<br />

node12.setText("Knoten 1.2");<br />

// SelectionListener hinzufügen<br />

tree.addSelectionListener(new SelectionAdapter() {<br />

public void widgetDefaultSelected(SelectionEvent e) {<br />

System.out.println("Enter gedrückt: " +<br />

tree.getSelection()[0].getText());<br />

}<br />

public void widgetSelected(SelectionEvent e) {<br />

System.out.println("Baumknoteneintrag ausgewählt: " +<br />

tree.getSelection()[0].getText());<br />

}<br />

177

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

Erfolgreich gespeichert!

Leider ist etwas schief gelaufen!