3
我正在研究Java,SmartGWT 2.5 & Mozilla FF 3.6.x.我在我的應用程序中使用Tree,TreeGrid & TreeNode。我有這些事件:onRowHover和onDragMove事件之間的同步
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);
}
}
});
我想火onRowHover內onDragMove,因爲像這樣的第一種被稱爲onDragMove並完成後它被稱爲onRowHover。如果節點可以是拖動節點的父節點,則應該立即高亮顯示,而不是節點將被放入其中。還有onDragStart和onFolderDroped事件。但我只想讓onRowHover和onDragMove同步。
但在onDragMove中,我不能這樣做:Node _node =(Node)event.getRecord()。 – Katerina
您不需要訪問事件,您可以隨時使用getRecord(getEventRow())獲取鼠標結束的記錄。 –