测试效果如图:
当鼠标划过的时候,需要显示更多的信息,因为GridPanel表格显示区域不够,所以把部分信息移动到 Tip 中显示。代码如下:
store: { type: 'EduCartoonStore', autoLoad: false, listeners: { 'load': function() { // 得到当前的Gird var grid = Ext.getCmp('eduCartoonListGrid'); var view = grid.getView(); // 创建一个 Tip var tip = Ext.create('Ext.tip.ToolTip', { target: view.el, delegate: view.itemSelector, trackMouse: true, renderTo: Ext.getBody(), listeners: { // 显示Tip beforeshow: function updateTipBody(tip) { var record = view.getRecord(tip.triggerElement); var state = ''; var createTime = ''; var packageTime = '-'; var showHtml = ''; // 状态 if (record.data.status === 0) { state = "<span style='color:red'>待审核</span>"; } else if (record.data.status === 1) { state = "<span style='color:green'>已审核</span>"; } else if (record.data.status === -1) { state = "<span style='color:grey'>已关闭</span>"; } // 创建时间 createTime = formatDate(record.data.ctime); // 打包时间 if (record.data.zipGenerateTime !== undefined) { packageTime = formatDate(record.data.zipGenerateTime) } showHtml += '<p><b>ID编号</b>:' + record.data.id + '</p>'; showHtml += '<p><b>状态</b>:' + state + '</p>'; showHtml += '<p><b>创建时间</b>:' + createTime + '</p>'; showHtml += '<p><b>打包时间</b>:' + packageTime + '</p>'; tip.update(showHtml); } } }); } } }