求EXTJS 4.0+++grid动态隐藏列

caelyntang 2012-09-18
例如4.0以下的版本有grid.getColumnModel().setHidden(1,true);

但是4.0以上的版本已经没这个方法了,求新方法
旋风小皮皮 2012-11-06
不用根据列的索引号设置显示隐藏, 给列定义一个_id 然后用 Ext.getCmp("_id").show();或者Ext.getCmp("_id").hide(); 就能实现显示隐藏了。
jxseeker 2013-05-04
就像你说的,Ext4+的版本,对Grid组件有变动。之前在网上查怎么控制表格的列,都是获取什么“列模型(ColumnModel)”的东西,在操作,Ext4以后,貌似获取不到,定义了列模型之后,表格也无法显示,可能已经被替换了吧。不过我发现4有跟简单的方法,来控制列。
直接用:1.var colu = myGrid.columns;//获取列对象
2.colu[1].hidden=true;//设置第几列隐藏
colu[1].setText = "新的列标题";//还能设置列标题等等

以前的方式我就不用举例了。
jxseeker 2013-05-04
刚才说的有误差!只能隐藏列中的数据,而列名的隐藏要手动拖拽其他列才能真正实现。这样就能实现隐藏了:
还是先获取表格的列对象。然后,
colus[1].hide();
就可以级隐藏列中数据,有隐藏列名了。其实翻一下API的源文件,里面就有。还有我发现,如果不确定Ext4+有哪些组件的哪些属性和方法,与早期版本不同,可以安装Splet插件,只能提示能“.”出来的就有,点不出来的说明新版本改了。
只能感慨学习Ext4+的人不多啊!
Global site tag (gtag.js) - Google Analytics