package grant; import org.eclipse.swt.widgets.*; import org.eclipse.swt.*; import org.eclipse.swt.events.*; import org.eclipse.swt.graphics.*; import org.eclipse.swt.layout.*; import org.eclipse.swt.custom.*; public class FormatterProblem { public static void main(String args[]) { new FormatterProblem().buildGUI(); } private void buildGUI() { Shell shell = new Shell(); final Display d = shell.getDisplay(); shell.setBounds(100, 100, 300, 100); shell.setLayout(new GridLayout()); Composite buttonGroup = new Composite(shell, SWT.BORDER); buttonGroup.setLayout(new GridLayout()); buttonGroup.setLayoutData(new GridData()); final Button addButton = new Button(buttonGroup, SWT.PUSH); addButton.setLayoutData(new GridData()); SelectionAdapter buttonSelection = new SelectionAdapter() { //.... }; addButton.addSelectionListener(buttonSelection); shell.open(); while (!shell.isDisposed()) { if (!d.readAndDispatch()) d.sleep(); } } }