【问题标题】:ExtJS 4: Prevent Ext.grid.Panel header menu from closing after clicking "Columns" sub menuExtJS 4:防止 Ext.grid.Panel 标题菜单在单击“列”子菜单后关闭
【发布时间】:2012-10-20 01:42:29
【问题描述】:

Sencha ExtJS 框架 Ext.grid.Panel 组件非常适合表示结果集数据。但是,当最终用户尝试启用和禁用网格中的列时,这会变得相当烦人。当您单击列标题的右侧时,会出现一个向下箭头,指示有一个菜单。当您单击该箭头时,会下拉一个菜单。在任何其他基于 HTML 应用程序的菜单(或桌面应用程序菜单)中,您可以将鼠标悬停在 [sub] 菜单选项上或单击 [sub] 菜单选项,然后弹出下一个子菜单。对于 Ext.grid.Panel,当您单击主标题菜单上的菜单选项希望展开嵌套的子菜单时,整个根(列标题)菜单就会消失。这将由 Sencha 表示为增强,因为有一种解决方法——不要单击菜单选项“列”。如果你不点击它仍然有效,但它不直观。谁能在 extjs 4 框架代码中解决这个问题?

【问题讨论】:

    标签: menu click extjs4 extjs


    【解决方案1】:

    根据文档中的源文件,此行为已在 4.1.2 中修复(尚未公开发布)。

    但是!

    Ext.define('MenuFix', {
        override: 'Ext.menu.Item',
        onClick: function () {
            return this.menu ? null : this.callParent(arguments);
        }
    });
    

    【讨论】:

    • 不错! +1 现在我只需要弄清楚如何在标准网格面板中实例化这个自定义类。还是我也必须创建一个自定义网格,并覆盖 Ext.grid.Panel?
    • 只需将此代码粘贴到 Ext.onReady 中的某处。或者将其保存在单独的文件中,并在 ext-all.js 之后包含它
    猜你喜欢
    • 2018-12-15
    • 2018-02-16
    • 1970-01-01
    • 1970-01-01
    • 2019-01-04
    • 1970-01-01
    • 2017-05-12
    • 1970-01-01
    • 2011-10-13
    相关资源
    最近更新 更多