如何从com.smartgwt.client.widgets.Window取消关闭事件?我需要用户确认关闭窗口,我看到类com.smartgwt.client.widgets.tab.events.TabCloseClickEvent有一个取消方法停止操作,我需要相同的com.smartgwt.client.widgets .events.CloseClickHandler。我如何实现此功能?
答案 0 :(得分:1)
public HandlerRegistration addCloseClickHandler(CloseClickHandler handler)
点击此窗口的关闭按钮。默认实现隐藏窗口并返回false以取消冒泡。如果您想要采取其他操作,请覆盖此方法。
答案 1 :(得分:0)
在你的窗口对象中
myWindowObject.addCloseClickHandler(new CloseClickHandler() {
public void onCloseClick(CloseClickEvent event) {
//Do whatever
if(IHaveTOCancel){
event.cancel();
}
}
});
答案 2 :(得分:0)
我发现如果你没有立即取消该事件(因为它等待用户输入),那么窗口仍会关闭。如果你需要等待用户输入,这就是我发现的工作。
window.addCloseClickHandler(new CloseClickHandler() {
@Override
public void onCloseClick(CloseClickEvent event) {
event.cancel();
StringBuilder b = new StringBuilder();
b.append("<BR>");
b.append("Are you sure you want to close?");
SC.ask("Close", b.toString(), new BooleanCallback() {
@Override
public void execute(Boolean value) {
if (value) {
window.close();
}
}
});
}
});