mydomain
No ADS
No ADS

Java SWT FillLayout Tutorial with Examples

  1. FillLayout
  2. FillLayout Example

1. FillLayout

No ADS
FillLayout is the simplest layout class. It lays out controls in a single row or column, forcing them to be the same size.
Horizontal FillLayout:
Vertical FillLayout:
//  Create a Horizontal FillLayout.
FillLayout fillLayout= new FillLayout(SWT.HORIZONTAL);

// Set Layout for component
component.setLayout(fillLayout);

// Create a Vertical FillLayout.
FillLayout fillLayout= new FillLayout(SWT.VERTICAL);

// Set Layout for component
component.setLayout(fillLayout);
margin & spacing
FillLayout fillLayout= new FillLayout(SWT.HORIZONTAL);
fillLayout.marginHeight= 20;
fillLayout.marginWidth= 20;
fillLayout.spacing=15;

2. FillLayout Example

No ADS
Horizontal FillLayout example:
HorizontalFillLayoutDemo.java
package org.o7planning.swt.filllayout;

import org.eclipse.swt.SWT;
import org.eclipse.swt.layout.FillLayout;
import org.eclipse.swt.widgets.Button;
import org.eclipse.swt.widgets.Display;
import org.eclipse.swt.widgets.Shell;

public class HorizontalFillLayoutDemo {

  public static void main(String[] args) {
      Display display = new Display();
      Shell shell = new Shell(display);
      shell.setText("SWT FillLayout (o7planning.org)");

      //  Create a Horizontal FillLayout.
      FillLayout fillLayout= new FillLayout(SWT.HORIZONTAL);
      shell.setLayout(fillLayout);
  
      Button button1=  new Button(shell, SWT.NONE);
      button1.setText("Button 1");

      Button button2=  new Button(shell, SWT.NONE);
      button2.setText("Button 2");
  
      Button button3=  new Button(shell, SWT.NONE);
      button3.setText("Button 3");

      shell.setSize(400, 250);
      shell.open();
      while (!shell.isDisposed()) {
          if (!display.readAndDispatch())
              display.sleep();
      }
      display.dispose();
  }
}
Horizontal FillLayout with margin & spacing:
HorizontalFillLayoutDemo2.java
package org.o7planning.swt.filllayout;

import org.eclipse.swt.SWT;
import org.eclipse.swt.layout.FillLayout;
import org.eclipse.swt.widgets.Button;
import org.eclipse.swt.widgets.Display;
import org.eclipse.swt.widgets.Shell;

public class HorizontalFillLayoutDemo2 {
  
    public static void main(String[] args) {
        Display display = new Display();
        Shell shell = new Shell(display);
        shell.setText("SWT FillLayout (o7planning.org)");
  
        FillLayout fillLayout= new FillLayout(SWT.HORIZONTAL);
        fillLayout.marginHeight= 20;
        fillLayout.marginWidth= 20;
        fillLayout.spacing=15;
        shell.setLayout(fillLayout);
        Button button1=  new Button(shell, SWT.NONE);
        button1.setText("Button 1");
    
        Button button2=  new Button(shell, SWT.NONE);
        button2.setText("Button 2");
      
        Button button3=  new Button(shell, SWT.NONE);
        button3.setText("Button 3");

        shell.setSize(400, 250);
        shell.open();
        while (!shell.isDisposed()) {
            if (!display.readAndDispatch())
                display.sleep();
        }
        display.dispose();
    }
}
No ADS
No ADS