如何在网格中显示菜单 - ExtJS 5?

时间:2015-01-14 14:15:41

标签: extjs menu grid

我正在尝试在网格面板中显示菜单。我有一个动作栏来显示一个图标,我想要应用一个效果......当鼠标悬停在该图标上时,将显示一个菜单。

我如何在extjs 5中做到这一点?

我的动作栏是这样的:

{
    xtype: 'actioncolumn',
    width: 70,
    items: [{
    icon: 'resources/images/icons/cog_edit.png', // Use a URL in the icon config
            tooltip: 'Edit',
            handler: function(grid, rowIndex, colIndex, a, b, c) {

            }
    }]
}

1 个答案:

答案 0 :(得分:4)

参考我在评论中提到的post,您的解决方案可能如下所示:

var menu_grid = new Ext.menu.Menu({
   items: [
       { text: 'Add', handler: function() {console.log("Add");} },
       { text: 'Delete', handler: function() {console.log("Delete");} }
   ]
});

...
{
    xtype: 'actioncolumn',
    width: 70,
    items: [{
       icon: 'resources/images/icons/cog_edit.png', // Use a URL in the icon config
       tooltip: 'Edit',
       handler: function(grid, rowIndex, colIndex, item, e, record) {
           var position = e.getXY();
           e.stopEvent();
           menu_grid.showAt(position);
       }
    }]
}

编辑:小心创建这样的项目,当它们被隐藏时,它们不会被完全删除并导致内存泄漏,请参阅此post以获取更多信息和可能的解决方法/解决方案