Как закрыть окно JAVA SWT с помощью кнопки?
Будучи новичком в Java и имея многолетний опыт работы с iOS и .NET, я обнаружил, что это очень запутанно. То, что я хочу, я думал, будет очень просто - я хочу диалог (вызываемый из главного окна) с кнопками OK и Cancel. Когда вы нажимаете кнопку ОК, он что-то делает, а затем закрывает диалоговое окно. Когда вы нажимаете кнопку Отмена, он просто закрывает диалоговое окно.
Однако выполнение этого с помощью диалогового класса оболочки SWT не очевидно. Как вы получаете кнопку, чтобы закрыть диалоговое окно и вернуться выполнение обратно в Главное окно?
2 ответов:
Используйте
Shell.close()вместоdispose()- такshlCheckOut.close().
Shell.closeотправляет событиеSWT.Close, а затем вызываетdispose.
С некоторыми пробами и ошибками и множеством бесплодных поисков, я нашел в вашем коде кнопки, вы должны позвонить .метод dispose() переменной оболочки диалогового окна. Например, мой диалог
CheckOutDialog, поэтому я назвал переменную оболочкиshlCheckOut. В методеcreateContents()я помещаю код кнопки следующим образом:...
Button btnCancel = new Button(shlCheckOut, SWT.NONE); btnCancel.addSelectionListener(new SelectionAdapter() { @Override public void widgetSelected(SelectionEvent e) { shlCheckOut.dispose(); } } }
Comments