2015-09-22 4 views
0

SWT View говорят, что «CalculateView» создается и открывается, и за ним следуют определенные строки кода «change()». SWT-оболочка располагается только при нажатии кнопки сохранения в оболочке CalculateView. Код метода change() вносит некоторые изменения в некоторые переменные, которые влияют на код в кнопке сохранения оболочки. Поэтому мне нужно остановить выполнение кода после shell.open(), пока не будет нажата кнопка сохранения в CalculateView.Остановить дальнейшее выполнение при открытии оболочки SWT

Shell shell = =new Shell(). 
CalculateView view= new CalculateView(shell); 
shell.open(); 
change(); 

Внутри CalculateView у меня есть кнопка сохранить.

CalculateView() 
    { 
    ToolItem save = new ToolItem(); 
    save.addSelectionListener({ 
    @Override 
      public void widgetSelected(SelectionEvent e) { 
       getshell().close(); 
      } 
    }); 

ответ

0

Я понимаю, что исполнение будет продолжаться, если вы не ставите ниже линии и окна будут уничтожены.

while (!shell.isDisposed()) { 
     if (!display.readAndDispatch()) { 
      display.sleep(); 
     } 
    }