Vaadin - 最大化可变容器宽度

时间:2016-10-15 10:42:37

标签: java java-ee vaadin vaadin7

" leftContent"下面代码中的容器有固定宽度(100px),一切都可以。问题是:如何将mainContent的宽度设置为最大值?最大值我的意思是填充所有浏览器的可用宽度。现在我的按钮旁边显示滚动条,这不是我所期望的。我也不想在px中为这个主要内容设置固定宽度"元件。

提前致谢!

主UI类:

protected void init(VaadinRequest vaadinRequest) {
    VerticalLayout leftContent = new VerticalLayout();
    [...]
    VerticalLayout mainContent = new VerticalLayout();
    mainContent.setSizeFull();
    mainContent.setMargin(false);

    HorizontalLayout container = new HorizontalLayout();
    container.addComponents(leftContent, mainContent);
    setContent(container);

    Navigator navigator = new Navigator(UI.getCurrent(), mainContent);
    [...]
}

MainView类:

public class MainView extends Panel implements View {

@Override
public void enter(ViewChangeEvent event) {
    setSizeUndefined();
    VerticalLayout verticalLayout = new VerticalLayout();
    verticalLayout.setSizeUndefined();
    for(int i=0;i< 30;i++) {
        verticalLayout.addComponent(new Button("text"));
    }
    setContent(verticalLayout);
    setSizeFull();
}

1 个答案:

答案 0 :(得分:1)

为清楚起见,这是评论的答案。以下代码为主要内容提供了最大宽度。

leftContent.setWidth("100px");
container.setExpandRatio(leftContent, 0f);
container.setExpandRatio(mainContent, 1f);