Sie wollen auch ein ePaper? Erhöhen Sie die Reichweite Ihrer Titel.
YUMPU macht aus Druck-PDFs automatisch weboptimierte ePaper, die Google liebt.
import java.util.ArrayList;<br />
import java.util.Iterator;<br />
import org.eclipse.swt.<strong>SWT</strong>;<br />
import org.eclipse.swt.awt.<strong>SWT</strong>_AWT;<br />
import org.eclipse.swt.events.*;<br />
import org.eclipse.swt.graphics.*;<br />
import org.eclipse.swt.layout.*;<br />
import org.eclipse.swt.widgets.*;<br />
public class <strong>SWT</strong>2D {<br />
// Shell für Popup-Editor<br />
Shell eShell = null;<br />
// Text-Widget für Editor<br />
Text eText = null;<br />
// Liste eingegebener Zeichenketten<br />
ArrayList wordList = new ArrayList(12);<br />
public static void main(String[] args) {<br />
<strong>SWT</strong>2D swtawt = new <strong>SWT</strong>2D();<br />
swtawt.run();<br />
}<br />
8.8 Ein Widget mit Swing<br />
Zunächst wird die <strong>SWT</strong>-Shell erzeugt. Darin werden in einem GridLayout<br />
das Container-Composite (EMBEDDED) für den AWT-Canvas und<br />
später noch eine Taste platziert.<br />
private void run() {<br />
// Top-Level Shell erzeugen<br />
final Display display = new Display();<br />
final Shell shell = new Shell(display);<br />
shell.setText("Java 2D-Beispiel");<br />
// GridLayout für Canvas und Taste<br />
shell.setLayout(new GridLayout());<br />
// Container für AWT-Canvas erzeugen<br />
final Composite canvasComp = new Composite(shell, <strong>SWT</strong>.EMBEDDED);<br />
// Vorzugsgröße setzen<br />
GridData data = new GridData();<br />
data.widthHint = 600;<br />
data.heightHint = 500;<br />
canvasComp.setLayoutData(data);<br />
Dann wird mit Hilfe der Klasse <strong>SWT</strong>_AWT ein AWT-Frame im <strong>SWT</strong>-<br />
Composite erzeugt. Auf die übliche Art wird diesem Frame dann ein<br />
AWT-Canvas hinzugefügt. Vom Canvas holen wir uns den grafischen<br />
Kontext, auf dem wir später die Zeichenoperationen durchführen.<br />
Außerdem sichern wir uns die anfängliche affine Transformation dieses<br />
grafischen Kontexts, um später nach Rotationsoperationen den<br />
205