0

我想用键盘箭头导航实现交互式 TreePanel。在第一次单击任何项​​目后,它可以正常工作。我添加了键绑定<A>-add,<E>-edit,<D>-deleting。显示添加对话框后,用户输入新项目的名称并按 Ctrl-S 或按保存按钮。这是保存代码:

saveItem: function(wnd) {
    rec = wnd.getRecord();
    var store = this.getProductCategoryStore();

    if (wnd.parent) {
        parent = wnd.parent
        parent.data.leaf = false;
        parent.set('loaded', false);
    } else
        parent = this.getCategoryTree().getRootNode();

    if (rec.phantom)
        parent.appendChild( rec );
    store.sync();
    wnd.close();

    if (wnd.parent)
        parent.expand();

    this.getCategoryTree().focus();
    this.getCategoryTree().selectPath( rec.getPath() );
},

所以,最后两行是我试图专注于树,但它不起作用。< A >、< E >、< D > - 工作,但箭头不起作用。如果我手动单击树,它会再次起作用。

4

1 回答 1

0

解决了。使用 Ext.FocusManager 了解焦点在应用程序中是如何工作的很酷。在树中正确聚焦:

tree.getView().focus()
于 2012-04-17T12:41:37.097 回答