Mega Code Archive

 
Categories / Java Tutorial / SWT
 

Grabbing Excess Space

Grow as their parent composite grows. Shrink as their parent composite shrinks. Usually, you enable these properties with controls such as Text, List, Tree, Table, or Canvas. The default value of each of the two properties is false. import org.eclipse.swt.SWT; import org.eclipse.swt.layout.GridData; import org.eclipse.swt.layout.GridLayout; import org.eclipse.swt.widgets.Button; import org.eclipse.swt.widgets.Display; import org.eclipse.swt.widgets.List; import org.eclipse.swt.widgets.Shell; public class GridLayoutGrabExpressionSpace {   public static void main(String[] args) {     Display display = new Display();     final Shell shell = new Shell(display);     GridLayout gridLayout = new GridLayout();     gridLayout.numColumns = 2;     gridLayout.makeColumnsEqualWidth = true;          shell.setLayout(gridLayout);     Button button1 = new Button(shell, SWT.PUSH);     button1.setText("button1"); // Default alignment     List list = new List(shell, SWT.BORDER);     list.add("item 1");     list.add("item 2");     list.add("item 3");     GridData gridData = new GridData();     gridData.grabExcessHorizontalSpace = true;     gridData.horizontalAlignment = GridData.FILL;     list.setLayoutData(gridData);     Button button2 = new Button(shell, SWT.PUSH);     button2.setText("button #2");     button2.setLayoutData(new GridData(GridData.VERTICAL_ALIGN_END));     Button button3 = new Button(shell, SWT.PUSH);     button3.setText("3");          shell.setSize(450, 400);     shell.open();     while (!shell.isDisposed()) {       if (!display.readAndDispatch()) {         display.sleep();       }     }     display.dispose();   } }