3

ツリー内のノードをクリックまたはダブルクリックしたときにアクションを実行する方法をGXT3 のTreeAPIで探していましたが、機能するものが見つからないようです。

にはandハンドラがあることは知っTreeGridていますが、に似たものはないようです。から継承された汎用メソッドがありますが、これは特定のノードではなくツリー全体に適用されるようです。CellClickHandlerCellDoubleClickTreeaddHandlerWidget

私が見落としているもの、またはこれを行うための別の/より良い方法はありますか?

4

4 に答える 4

2

TreePanelの選択モデルを使用します。

treePanel.getSelectionModel().addSelectionChangedListener(
        new SelectionChangedListener<BaseTreeModel>() {

            @Override
            public void selectionChanged(SelectionChangedEvent<BaseTreeModel> se) {

                BaseTreeModel selectedItem = se.getSelectedItem();

                // implement functionality
            }
        }
);

リファレンスについては、TreePanelAPIを参照してください。

于 2012-05-25T14:14:20.597 に答える
2

もう 1 つのオプションは、Tree の onDoubleClick (または onClick) メソッドをオーバーライドすることです。

Tree tree = new Tree<MyModel, String>(store, valueProvider){            
    @Override
    protected void onDoubleClick(Event event) {
        TreeNode<MyModel> node = findNode(event.getEventTarget().<Element> cast());
        Info.display("Double Click", "You double clicked this node!");
        super.onDoubleClick(event);
   }
};
于 2012-06-18T17:59:14.917 に答える
0

これは、Cell アクション ツリーを使用して実現できます。その実装は、http ://www.sencha.com/examples/#ExamplePlace:cellactiontree にあります。

于 2012-05-25T18:06:42.553 に答える