关于 extjs4:extjs 4 在 tabpanel 的网格上渲染工具提示

extjs 4 rendering tooltip on grid on tabpanel

我正在使用 Extjs 4


  • Ext.QuickTips.init() 应该只被调用 1 次并且需要重新定位到全局位置。
  • 您需要将呈现的定义重新定位到它所属的实际列:{ ..., dataIndex : 'myColumn', rendered : function (value, metaData, etc) { return value; }, title : 'My Column Title', ... }
  • 编辑

    下面是一个例子:

    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    Ext.define('MyApp.view.ItemManager', {
        extend: 'MyApp.view.ui.ItemManager',

        initComponent: function() {
            //Ext.QuickTips.init(); // move to global js file. only call once.
            var me = this;
            me.callParent(arguments);

            if (!me.down('#itemManager').columns[3].renderer) {
                me.down('#itemManager').columns[3].renderer=function(value,metaData,record,colIndex,store,view) {
                    var imgpath="<img style=\'margin: 2px 0;height:150px;width:150px;\' src=\' /items/"+record.data.id +" '/>";

                    metaData.tdAttr = 'data-qtip=" '+imgpath +'"' ;
                    return ''+ record.data.img_filename +'';
                }
            }
        }
    });

    • 如果你 luk @ques 彻底你会注意到我已经说过我使用 ext desginer 1.2 没有指定渲染器选项......所以如果我在 js 中包含在你所说的导出它之后创建的代码,下次当我导出 xds 覆盖我编写的代码(渲染器)..所以我不能在列配置中包含渲染器
    • 请查看并应用我添加的示例。另外,请不要忘记将您的 Ext.QuickTips.init(); 移动到全局位置,因为它应该只被调用一次。