注意:我实际上是在上周才开始调查 V7,所以请谨慎对待我的回应......
这两个问题都源于 FormLayout 从未提供页眉和页脚这一事实 - Form 类提供了。
我建议创建您自己的具有页眉布局、FormLayout 和页脚布局的 Form 等效项,例如(未尝试使用,可能需要对 mainLaout 使用 GridLayout 而不是 VerticalLayout)
public class FormComponent extends CustomComponent {
private Layout mainLayout;
protected Layout header;
protected Layout central;
protected Layout footer;
public FormComponent() {
init(new HorizontalLayout(), new FormLayout(), new HorizontalLayout());
}
protected void init(Layout header, Layout central, Layout footer) {
this.footer = footer;
this.header = header;
this.central = central;
mainLayout = new VerticalLayout();
mainLayout.addComponent(header);
mainLayout.addComponent(central);
mainLayout.addComponent(footer);
setCompositionRoot(mainLayout);
setSizeUndefined();
}
public Layout getHeader() {
return header;
}
public Layout getCentral() {
return central;
}
public Layout getFooter() {
return footer;
}
}