我有一个按钮的代码:
private void createDeleteButton() {
Button deleteButton = new Button("Delete");
deleteButton.addClickListener((Button.ClickEvent e) -> {
LOG.info("Creating DeleteModal Window");
DeleteModal deleteModal= new DeleteModal(queryName);
this.getUI().getUI().addWindow(deleteModal);
// I want to wait for the exit event of delete modal
// and then execute the next method
refresh();
});
buttonPanel.addComponent(deleteButton);
}
当我单击此按钮时,会出现一个窗口,但同时会执行 refresh();
方法
有没有办法等待deleteModal
的退出事件,然后执行refresh();
方法?
注释:
DeleteModal 扩展窗口
我正在使用 Vaadin
包含此方法的类扩展VerticalLayout
最佳答案
您可以通过 Window.addCloseListener
订阅窗口的关闭事件.
这样的东西应该可以工作(免责声明:未经测试的代码):
deleteModal.addCloseListener((Window.CloseEvent e) -> refresh());
关于java - 如何等待窗口的退出事件?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/44562010/