GWT:事件在onClick上多次触发

时间:2015-11-06 09:11:35

标签: events gwt onclick

点击网格单元后,我需要触发一个事件。它可以工作,但会触发多个事件。 我的代码:

private void gridClickHandler(final boolean cardDeterminer) {
    gridClickHandler = new ClickHandler() {
        @Override
        public void onClick(ClickEvent event) {
            int cellIndex = view.getGrid().getCellForEvent(event)
                    .getCellIndex(); // get clicked cell of grid
            if (cardDeterminer)
                oasisCardRPC(cellIndex); //rpc based on clicked cell
            else
                desertCardRPC(cellIndex); //rpc based on clicked cell

        }

    };
    view.getGrid().addClickHandler(gridClickHandler);
}

方法gridClickHandler在RPC的onSuccess中调用,并使用传递的布尔值调用新的RPC。 (它的工作方式如下:点击一些小部件,成功后点击网格。网格应该只触发事件,直到之前点击这个小部件)  我不知道如何为网格创建一个新的ClickHandler,并且仍然只在需要时使clickHandler触发事件。

提前致谢!

1 个答案:

答案 0 :(得分:0)

使用布尔值:isClickHandlerAttached

最初为false,第一次添加clickhandler时将其置为true。仅当boolean为false时才附加。