最近用ExtJS4的GridPanel,需要支持单选的反选功能,查看了很多资料和GridPanel的API,没有找到通过config项来进行配置的方法,但是Ext.selection.Model有个配置项allowDeselect可以通过配置来支持反选功能,所以通过GridPanel的selModel(API文档中未显示这个配置选项,不知道将来是否会修改)来指定选择模型的方式来实现,代码如下:
Ext.define('Gigi.view.menu.Tree', {
extend : 'Ext.tree.Panel',
alias : 'widget.menutree',
store : 'Menus',
region : 'center',
loadMask : true,
disableSelection : false,
rootVisible : false,
// hideHeaders : true,
selModel : Ext.create('Ext.selection.RowModel', {allowDeselect : true}),
columns : [{
xtype : 'treecolumn',
text : '名称',
flex : 2,
dataIndex : 'name'
}, {
text : '编码',
flex : 1,
dataIndex : 'code'
}, {
text : 'URL',
flex : 1,
dataIndex : 'url'
}, {
text : '对应权限',
flex : 1,
dataIndex : 'authority'
}],
initComponent : function() {
this.callParent(arguments);
}
});