ExtJS FormPanel动态添加字段后更改labelWidth

时间:2010-06-07 12:40:47

标签: extjs formpanel

我有一个动态FormPanel,我需要在加载所有字段后设置标签宽度。我在调用this.doLayout之前尝试过使用this.labelWidth = 200但它忽略了新值。

有人可以告诉我在哪里可以设置这个并重新绘制表单,谢谢。

2 个答案:

答案 0 :(得分:1)

在查看FormLayout的extjs源代码后,我发现在表单上调用doLayout之前,您可以设置一些变量来更改标签宽度。

所以在FormPanel中使用以下代码来更改标签宽度:

Ext.apply(this.layout, {
    labelAdjust: this.labelWidth + 5,
    labelStyle: 'width:' + this.labelWidth + 'px;',
    elementStyle: 'padding-left:' + (this.labelWidth + 5) + 'px'
});

this.doLayout();

答案 1 :(得分:0)

可能是在呈现FormPanel之后不再考虑labelWidth配置选项吗?也许您可以使用FormPanel.findByType获取对所有标签的引用,将标签宽度设置为200,然后然后调用FormPanel.doLayout