我有一个基于Ext.form.field.Base
的自定义字段组件。我从这个post得到了很大的想法。但是,解决这个问题的原因是它有一个固定的高度。我想要的是,当我向网格添加条目时,容器的高度会增加。
我之前尝试制作这样的字段,但是基于包含网格和按钮的Panel。将此面板放入vbox
布局并向网格添加行可以完美地调整容器表单面板的大小。我错过了实现容器调整大小的内容?
这是一个小提琴,你应该很容易看出我的意思: http://jsfiddle.net/amx9j/
答案 0 :(得分:1)
我终于开始工作了!
请看这个小提琴: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花时间研究这个问题!