Mega Code Archive

 
Categories / Java Tutorial / SWT
 

Using RowLayout

places all controls in a single column or row. it doesn't force all contained controls to the same size. wrap controls to a new row or column if it runs out of space. uses the RowData class to determine initial widths and heights for its controls. import org.eclipse.swt.SWT; import org.eclipse.swt.layout.RowData; import org.eclipse.swt.layout.RowLayout; import org.eclipse.swt.widgets.Button; import org.eclipse.swt.widgets.Display; import org.eclipse.swt.widgets.Shell; public class RowLayoutTest {   public static void main(String[] args) {     Display display = new Display();     Shell shell = new Shell(display);     RowLayout layout = new RowLayout(SWT.VERTICAL);     layout.marginLeft = 20;     layout.marginTop = 20;     layout.justify = true;     shell.setLayout(layout);          new Button(shell, SWT.PUSH).setText("one");     new Button(shell, SWT.PUSH).setText("two");     new Button(shell, SWT.PUSH).setText("three");     new Button(shell, SWT.PUSH).setText("four");     new Button(shell, SWT.PUSH).setText("five");     new Button(shell, SWT.PUSH).setText("six");     Button b = new Button(shell, SWT.PUSH);     b.setText("seven");     b.setLayoutData(new RowData(100, 100));     shell.open();     while (!shell.isDisposed()) {       if (!display.readAndDispatch()) {         display.sleep();       }     }     display.dispose();   } }