如何等待窗口的退出事件?

时间:2017-06-15 08:05:38

标签: java vaadin vaadin7

我有一个Button的代码:

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 extends Window

我正在使用Vaadin

包含此方法的类extends VerticalLayout

1 个答案:

答案 0 :(得分:2)

您可以使用Window.addCloseListener订阅窗口关闭事件。

这样的事情应该有效(免责声明:未经测试的代码):

deleteModal.addCloseListener((Window.CloseEvent e) -> refresh());