WindowManagers : WindowManagers « SWT « Java Tutorial






WindowManagers groups windows. Then you can close them as a group.

import org.eclipse.jface.window.ApplicationWindow;
import org.eclipse.jface.window.WindowManager;
import org.eclipse.swt.SWT;
import org.eclipse.swt.widgets.Composite;
import org.eclipse.swt.widgets.Control;
import org.eclipse.swt.widgets.Display;
import org.eclipse.swt.widgets.Label;

public class ApplicationWindowManager {
  public static void main(String[] args) {
    MainWindow main = new MainWindow();
    MainWindow main2 = new MainWindow();
    
    WindowManager wm = new WindowManager();
    wm.add(main);
    wm.add(main2);
    if (!wm.close()){
      System.err.println("Windows failed to close");
    }

  }
}

class MainWindow extends ApplicationWindow {
  public MainWindow() {
    super(null);
    // Don't return from open() until window closes
//    setBlockOnOpen(true);

    // Open the main window
    open();

    // Dispose the display
    Display.getCurrent().dispose();

  }

  protected Control createContents(Composite parent) {
    // Create a Hello, World label
    Label label = new Label(parent, SWT.CENTER);
    label.setText("www.java2s.com");
    return label;
  }

}








17.6.WindowManagers
17.6.1.WindowManagers