我有一个基于Ext.form.field.Base
. 我从这篇文章中得到了一个大主意。但是这个解决方案困扰我的是一个事实,它有一个固定的高度。相反,我想要的是,当我向网格中添加条目时,容器的高度会增加。
我之前尝试过创建这样一个字段,但基于包含网格和按钮的面板。将此面板放入vbox
布局并向网格中添加行完美地调整了容器表单面板的大小。我错过了什么来实现容器将调整大小?
这是一个小提琴,你应该很容易明白我的意思:http: //jsfiddle.net/amx9j/
我有一个基于Ext.form.field.Base
. 我从这篇文章中得到了一个大主意。但是这个解决方案困扰我的是一个事实,它有一个固定的高度。相反,我想要的是,当我向网格中添加条目时,容器的高度会增加。
我之前尝试过创建这样一个字段,但基于包含网格和按钮的面板。将此面板放入vbox
布局并向网格中添加行完美地调整了容器表单面板的大小。我错过了什么来实现容器将调整大小?
这是一个小提琴,你应该很容易明白我的意思:http: //jsfiddle.net/amx9j/
我终于让它工作了!
在这里看到这个小提琴:http: //jsfiddle.net/amx9j/3/
此配置用于form
工作:
layout: {
type: 'vbox',
align: 'stretch'
},
items: [{
xtype: 'container',
layout: 'anchor',
items: [{
//custom fields that change their height
}]
并且在自定义字段中,this.updateLayout()
每次您期望高度发生变化时都必须使用。另外我必须实现该onResize
方法:
onResize: function(w, h) {
this.callParent(arguments);
this.grid.setWidth(w - this.getLabelWidth());
}
重要的是,不要设置网格的高度;-)
感谢@Peter 花时间研究这个!