Vaadin - 最大化可变容器宽度
Vaadin - maximize changeable container width
"leftContent" 下面代码中的容器具有固定宽度 (100px),一切正常。问题是:如何将 mainContent 的宽度设置为最大?最大我的意思是填充所有浏览器的可用宽度。现在我在按钮旁边显示了滚动条,这不是我所期望的。我也不想为这个“mainContent”元素设置以像素为单位的固定宽度。
提前致谢!
主要UIclass:
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);
[...]
}
主视图class:
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();
}
为清楚起见,这是评论中的答案。下面的代码给出了主要内容的最大宽度。
leftContent.setWidth("100px");
container.setExpandRatio(leftContent, 0f);
container.setExpandRatio(mainContent, 1f);
"leftContent" 下面代码中的容器具有固定宽度 (100px),一切正常。问题是:如何将 mainContent 的宽度设置为最大?最大我的意思是填充所有浏览器的可用宽度。现在我在按钮旁边显示了滚动条,这不是我所期望的。我也不想为这个“mainContent”元素设置以像素为单位的固定宽度。
提前致谢!
主要UIclass:
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);
[...]
}
主视图class:
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();
}
为清楚起见,这是评论中的答案。下面的代码给出了主要内容的最大宽度。
leftContent.setWidth("100px");
container.setExpandRatio(leftContent, 0f);
container.setExpandRatio(mainContent, 1f);