我如何为extjs面板创建上下文菜单

时间:2012-04-18 15:19:37

标签: extjs4

我有像

这样的上下文菜单
var ctxMenu = Ext.create('Ext.menu.Menu', {
    items: [{ text: 'Edit', action: 'edit'}]
});

如何将其添加到extjs面板?我没有在面板中看到任何合适的事件,例如treepanel中的itemcontextmenu

提前谢谢。

1 个答案:

答案 0 :(得分:4)

itemcontextmenu中有containercontextmenuExt.tree.Panel个事件。

更新:Ext.grid.Panel存在相同的事件。您可能想要订阅它们并执行类似的操作:

showContextMenu: function(e) {
    var me = this;

    if (me.contextMenu === undefined)
        return;

    e.stopEvent();
    me.contextMenu.showAt(e.getXY());
},

// Show context menu from the grid
gridContextMenu: function(view, rec, node, index, e) {
    this.showContextMenu(e);
},

// Show context menu from the empty area below grid records
containerContextMenu: function(view, e) {
    this.showContextMenu(e);
},