我有一个关于网格布局适应用户屏幕大小的问题。我想创建一个包含3列和2行的网格布局,第一行将包含一个菜单,第二行将使用面板作为主体,第一列X第二行将包含一个树,但我无法得到我想要的结果,这段代码显示了面板,但不是全尺寸。以下是我的代码,我找不到原因为什么它不起作用!!
@Override
public void init() {
Window main = new Window("My App");
main.setSizeFull();
setMainWindow(main);
VerticalLayout root = new VerticalLayout();
main.setContent(root);
main.getContent().setSizeFull();
GridLayout grid = new GridLayout(3, 2);
main.addComponent(grid);
grid.setColumnExpandRatio(0, 0.13f);
grid.setColumnExpandRatio(1, 0.86f);
grid.setColumnExpandRatio(2, 0.0f);
grid.setHeight(100, Sizeable.UNITS_PERCENTAGE);
grid.setWidth(100,Sizeable.UNITS_PERCENTAGE);
grid.addComponent(new Label("menu"), 0, 0, 0, 1);
grid.addComponent(new Label("tree"), 1, 0, 1, 0);
Panel pan = new Panel();
pan.setWidth(100, Sizeable.UNITS_PERCENTAGE);
pan.setHeight(100, Sizeable.UNITS_PERCENTAGE);
VerticalLayout body = new VerticalLayout();
body.setSizeFull();
body.addComponent(pan);
grid.addComponent(body, 1, 1, 1, 1);
}