ChrisWhoCodes is quite correct. The following code implements its model.
import org.eclipse.swt.widgets.Display; import org.eclipse.swt.widgets.Shell; public class MultipleShells { public MultipleShells(Display display) { Shell[] shells; MainWindows mainWindow; mainWindow = new MainWindows(display, "Shell 1"); mainWindow = new MainWindows(display, "Shell 2"); while (!display.isDisposed()) { if (!display.readAndDispatch()) { shells = display.getShells(); if (shells.length == 0) break; display.sleep(); } } } public static void main(String[] args) { Display display = new Display(); MultipleShells mainApp = new MultipleShells(display); display.dispose(); } } class MainWindows { protected MainWindows(Display parent, String title) { Shell mainShell; mainShell = new Shell(parent); mainShell.setText(title); mainShell.open(); } }
source share