package com.qualityeclipse.genealogy.view; import org.eclipse.draw2d.*; import org.eclipse.draw2d.geometry.*; import org.eclipse.swt.SWT; import org.eclipse.swt.layout.GridData; import org.eclipse.swt.layout.GridLayout; import org.eclipse.swt.widgets.Canvas; import org.eclipse.swt.widgets.Composite; import org.eclipse.swt.widgets.Display; import org.eclipse.swt.widgets.Shell; public class main { private void run() { Shell shell= new Shell(new Display()); shell.setSize(420, 380); shell.setText("DTFParametereingabe"); shell.setLayout(new GridLayout()); Canvas canvas = createDiagram(shell); canvas.setLayoutData(new GridData(GridData.FILL_BOTH)); Display display = shell.getDisplay(); shell.open(); while (!shell.isDisposed()) { while (!display.readAndDispatch()) { display.sleep(); } } } private Canvas createDiagram(Composite parent) { Figure root = new Figure();//root Figure und simples Layout erzeugen root.setFont(parent.getFont()); //setze Font für root Figure, dass jedes Lable korrekt kalkuliert wird XYLayout layout = new XYLayout(); root.setLayoutManager(layout); Canvas canvas = new Canvas(parent, SWT.DOUBLE_BUFFERED);//canvas erzeugen um root Figur zu erzeugen canvas.setBackground(ColorConstants.white); // Hintergrundfarbe bestimmen LightweightSystem lws = new LightweightSystem(canvas); lws.setContents(root); return canvas; } }