JAVA VAADIN7 如何防止Window在某个动作前关闭,如何让window在最上面?

JAVA VAADIN7 How to prevent Window closing before certain action, how to let window on top?

java 中的项目,vaadin 7 我很难找到一种方法来防止我的 window 在单击里面的按钮之前被关闭。我希望 window 也位于其他屏幕内容之上。 到目前为止我的代码:

private void handleButtonCancelBatches() {
  if (projectBatchTeller > 0) {
    Button btnYes = new Button("Yes");
    Button btnNo = new Button("No");
    // toDo add click listeners to the buttons 
    HorizontalLayout horizontalLayout = new HorizontalLayout();
    horizontalLayout.addComponents(btnYes, btnNo);
    // toDo add extra informative content to the horizontalLayout
    Window window = new Window( //
       "Cancel "+ projectBatchTeller + " selected batches ?", horizontalLayout);
    window.setWidth(50f, Unit.PERCENTAGE);
    window.setHeight(50f, Unit.PERCENTAGE);
    window.setPosition((int) getUI().getWidth() / 2, (int) getUI().getHeight() / 2);
    getUI().getCurrent().addWindow(window);
  } else {
    Notification.show("No batches selected to cancel");
  }
}
// toDo add listeners / handlers for the buttons

我真正需要的是典型 Messagebox 的行为,但不允许我添加 pom 中的额外依赖项,我也无法升级到更新版本的 Vaadin。

如果不行,我想在 60 秒后自动关闭 window, 发送通知通知执行默认路径, 未处理批次

有什么建议吗? 谢谢

我自己找到了一个可行的解决方案。实际上很简单,问题 是我不知道 "modal" 这个词(我说荷兰语)

它提供类似 msgbox 的行为(类似于 C# ...)

window.setModal(true);
window.setClosable(false);