Задача : открыть окно с помощью Java SWT над всеми другими окнами (представьте, что вы нажимаете Блокнот, затем после выполнения Notepad.exe окно открывается над всеми остальными окнами.
Проблема: Я использую Java SWT для графического интерфейса, и каждый раз, когда я открываю окно, открытое окно появляется под всеми остальными окнами.
С учетом кода:
Display display = new Display();
shell = new Shell(display);
shell.setSize(750,750);
Monitor primary = display.getPrimaryMonitor();
Rectangle bounds = primary.getBounds();
Rectangle rect = shell.getBounds();
int x = bounds.x + (bounds.width - rect.width) / 2;
int y = bounds.y + (bounds.height - rect.height) / 2;
shell.setLocation(x, y);
roomColor = display.getSystemColor(SWT.COLOR_DARK_GREEN);
wallColor = display.getSystemColor(SWT.COLOR_RED);
doorColor = display.getSystemColor(SWT.COLOR_BLUE);
shell.setText("Maze");
createContents(shell,maze);
shell.open();
while (!shell.isDisposed())
{
if (!display.readAndDispatch())
{
display.sleep();
}
}
display.dispose();
....
....
public void createContents(Shell shell,final MazeInterface maze)
{
FillLayout myLayout = new FillLayout();
myLayout.type = SWT.VERTICAL;
shell.setLayout(myLayout);
Canvas canvas = new Canvas(shell,SWT.NONE);
canvas.setSize(shell.getSize());
canvas.addPaintListener(new PaintListener()
{
public void paintControl(PaintEvent e)
{
prepareMazeDrawing(e,maze);
}
});
}
Я пробовал бесчисленные изменения, но окно все еще открыто под всеми другими окнами.
Буду признателен за вашу помощь С уважением, Рон