Extjs4 устанавливает всплывающую подсказку для каждого столбца при наведении курсора в gridPanel - PullRequest
3 голосов
/ 24 сентября 2011

Я получаю всплывающую подсказку при наведении мыши на каждую строку для текущего столбца, но не могу получить всплывающую подсказку для следующего столбца при наведении курсора на ту же строку.

Но я могу получить ее, если наведите курсор на другую строку &снова наведите курсор на любой столбец предыдущего ряда, используя:

listeners:{
'itemmouseenter': function (view, record, item, index, e, eOpts) {
        var gridColums = view.getGridColumns();
        var column = gridColums[e.getTarget(this.view.cellSelector).cellIndex];
        Ext.fly(item).set({ 'data-qtip': 'Des:' + column.dataIndex });

  }
}

Может кто-нибудь показать мне, что мне не хватает, или указать мне правильное направление?

Ответы [ 3 ]

29 голосов
/ 06 марта 2012

У меня есть простой, используя функцию рендерера:

{
    xtype : 'gridcolumn',
    dataIndex : 'status',
    text : 'Status',
    renderer : function(value, metadata) {
                    metadata.tdAttr = 'data-qtip="' + value + '"';
                    return value;
                }
}
5 голосов
/ 16 ноября 2011

Я просматривал это.Мне удалось получить подсказку для каждой ячейки, выполнив что-то вроде этого:

 Ext.getCmp('DynamicDemandGrid').getView().on('render', function(view) {
    view.tip = Ext.create('Ext.tip.ToolTip', {
        // The overall target element.
        target: view.el,
        // Each grid row causes its own seperate show and hide.
        delegate: view.cellSelector,
        // Moving within the row should not hide the tip.
        trackMouse: true,
        // Render immediately so that tip.body can be referenced prior to the first show.
        renderTo: Ext.getBody(),
        listeners: {
            // Change content dynamically depending on which element triggered the show.
            beforeshow: function updateTipBody(tip) {
                var gridColums = view.getGridColumns();
                var column = gridColums[tip.triggerElement.cellIndex];
                var val=view.getRecord(tip.triggerElement.parentNode).get(column.dataIndex);
                tip.update(val);
            }
        }
    });
});

Дайте мне знать, если это поможет

2 голосов
/ 24 апреля 2012
{
    text: name,
    width: 80,
    dataIndex: dataIndex,
    sortable: true,
    listeners: {
        afterrender: function ()
        {
            Ext.create('Ext.ToolTip',
            {
                target: this.getEl(),
                anchor: direction | "top",
                trackMouse: true,
                html: this.text
            });
        }
    }
}
...