在Button处捕获GWT ClickEvent

时间:2013-03-13 07:57:10

标签: java gwt button dialog onclick

我有一个按钮,当你点击它时会显示一个DialogBox。

但是,如果单击按钮,它会显示DialogBox,同时它将关闭然后再次打开。

似乎DialogBox的closeEvent在按钮上的clickEvent之前被抛出。因此,如果您检查dialogBox.isShowing(),它将再次打开。因为当clickEvent显示框被抛出时对话框关闭。

我的想法是抓住onClick事件并扔掉它,但我不知道该怎么做。

有人知道解决这个问题的方法吗?

2 个答案:

答案 0 :(得分:1)

您可以创建一个变量来保存对话框的状态。

if(myDialogOpen==false)
{
    openDialog();
}

或者您可以将对话框保存为您正在使用的类中的变量。

DialogBox myDialog;
if(myDialog==null)
{
    openDialog()
}

无论哪种方式,您都必须在打开或关闭对话框时重置变量。基本上如果对话框已经打开,它什么都不做。

这些是一些可能的想法,也许如果你添加一些你到目前为止所做的代码,我可以给你一个更好的答案。

答案 1 :(得分:1)

询问 event.preventDefault() ??

你可以在click handler of button内捕获事件。