onRowHover和onDragMove事件之间的同步

时间:2013-07-12 07:28:12

标签: java tree smartgwt treenode treegrid

我正在研究Java,SmartGWT 2.5& Mozilla FF 3.6.x.我正在使用Tree,TreeGrid&我的应用程序中的TreeNode。我有这些事件:

addDragMoveHandler(new DragMoveHandler() {
        @Override
        public void onDragMove(DragMoveEvent event) {
            // this is the Node which is moving to other parent
            // it's parent is instance of PageFolder
            Node movingNode = (Node) getSelectedRecord();
        }
    });

    addRowHoverHandler(new RowHoverHandler() {
        @Override
        public void onRowHover(RowHoverEvent event) {
            Node _node = (Node) event.getRecord();
            if (_node.getModel() instanceof PageFolder) {
                // this _node can be the parent of the moving node
                // and it will change it's color using it's attribute in getBaseStyle
                _node.setAttribute("canBeParent", true);
            }
        }
    });

我想在onDragMove中触发onRowHover,因为首先调用onDragMove,然后在它完成后调用onRowHover。如果节点可以是拖动节点的父节点,则应立即突出显示,而不是将节点放入其中。还有onDragStart和onFolderDroped事件。但我喜欢只在onRowHover上和onDragMove同步。

1 个答案:

答案 0 :(得分:1)

无需尝试触发onRowHover事件,只需从onDragMove处理程序调用相同的逻辑。