2

好的,我的问题很简单。我可以在课堂上添加类似EventPreview的东西吗?SelectionEventTree

我需要它,因为在树元素之间切换会初始化屏幕的其他部分,这可能并不总是可能的(例如要求确认)......

structTree.addSelectionHandler(new SelectionHandler<TreeItem>() {
    @Override
    public void onSelection(SelectionEvent<TreeItem> event) {
        // Do something, or maybe cancel selection
    }
});

编辑

如果我EventPreview为此添加ClickEvent可能会成功,但我想知道是否有更清洁的方法......

4

1 回答 1

1

EventPreview已弃用,使用NativePreviewHandlerandNativePreviewEvent代替。

事件预览的想法是针对用户交互的 DOM 事件——描述用户在与浏览器交互时的物理动作的事件。这就是为什么取消ClickEvent.

相反,SelectionEvent它是一个逻辑事件——它源于 GWT 代码,并描述了小部件从用户的“物理”事件中看到的意图。

但是,仍然有一种方法可以防止SelectionEvents 发生,但它在 GWT 中的使用不一致 -Tree小部件不使用它,所以这次它不会帮助你。其他小部件,例如TabLayoutPanel在实际触发之前StackLayoutPanel触发 a ,让您有机会在实际发生选择之前使用它。BeforeSelectionEventSelectionEventcancel()

于 2012-12-25T14:55:45.293 回答