煎茶网格和动作栏
Posted
技术标签:
【中文标题】煎茶网格和动作栏【英文标题】:Sencha Grid and Action Column 【发布时间】:2012-11-28 10:23:12 【问题描述】:我在网格上有这个:
xtype: 'actioncolumn',
renderer: function (val, metadata, record)
if (record.raw.possibleActions != 2)
this.items[0].icon = '';
this.items[0].tooltip = '';
metadata.style = 'cursor: pointer;';
return val;
,
width: 30,
align: 'center',
sortable: false,
items: [
icon: 'images/edit.png',
tooltip: 'stuff',
handler: function (grid, rowIndex, colIndex)
'do stuff'
]
,
我希望当字段“possibleActions”不同于 2 时隐藏操作列的图标。
有了这个this.items[0].icon = '';
,它会从所有列中删除图标...
如何访问与条件匹配的特定行的列??
【问题讨论】:
【参考方案1】:我已经解决了:
renderer: function (val, metadata, record)
if (record.raw.possibleActions != 2)
this.items[0].icon = '';
this.items[0].tooltip = '';
else
this.items[0].icon = 'images/edit.png';
this.items[0].tooltip = 'RELATÓRIO FINAL';
metadata.style = 'cursor: pointer;';
return val;
,
渲染器似乎覆盖了初始配置,这就是为什么所有记录都没有图标的原因。
【讨论】:
【参考方案2】:使用this
确实有风险。您最终可能会得到其他实例。
但是好的,如果你有我推荐你使用的实例
setVisible(false);
disable();
禁用和
setVisible(true);
enable();
启用。仅删除图像是不够的。
【讨论】:
问题是“this”或“grid.columns”指的是所有列...我希望能够访问那个特定的列。 @MiguelTeixeira 就像我想的那样……那会很难。问题是,渲染器函数(可以“覆盖”)知道值但不知道列类型。对于您的情况,您需要将两者混合。我想最好的方法是创建自己的操作栏。有了它,您就拥有了完全的控制权,这样您就可以触发一个包含值 + 实例的侦听器 感谢您的帮助,我已经弄明白了。以上是关于煎茶网格和动作栏的主要内容,如果未能解决你的问题,请参考以下文章
24Cocos2dx 3.0游戏开发找小三之网格动作:高炫酷的3D动作