Liferay 如何在Vaadin中动态设置子窗口高度
我的vaadin应用程序中有一个非常奇怪的问题。我正在从主窗口打开一个子窗口,该子窗口在后台执行一些操作,并显示一些新内容。该过程将继续更改内容 问题是每个内容的数量不同,因此每个内容的高度应相应设置。如何设置窗口的高度?“自动高度”不起作用 PS:我不是每次都使用新窗口,而是每次都修改内容 编辑:也可以自定义css,如Liferay 如何在Vaadin中动态设置子窗口高度,liferay,vaadin,liferay-6,Liferay,Vaadin,Liferay 6,我的vaadin应用程序中有一个非常奇怪的问题。我正在从主窗口打开一个子窗口,该子窗口在后台执行一些操作,并显示一些新内容。该过程将继续更改内容 问题是每个内容的数量不同,因此每个内容的高度应相应设置。如何设置窗口的高度?“自动高度”不起作用 PS:我不是每次都使用新窗口,而是每次都修改内容 编辑:也可以自定义css,如 高度:自动;溢出:自动 不起作用。这对我有用: Window window = new Window("Window caption"); w
高度:自动;溢出:自动
不起作用。这对我有用:
Window window = new Window("Window caption");
window.setResizable(false);
window.setHeightUndefined();
final VerticalLayout vl = new VerticalLayout();
vl.setMargin(true);
vl.setHeightUndefined();
button = new Button("Add component");
button.addClickListener(new Button.ClickListener() {
public void buttonClick(Button.ClickEvent event) {
vl.addComponent(new Label("Thank you for clicking"));
}
});
vl.addComponent(button);
button = new Button("Remove component");
button.addClickListener(new Button.ClickListener() {
public void buttonClick(Button.ClickEvent event) {
vl.removeComponent(vl.getComponent(2));
}
});
vl.addComponent(button);
window.setContent(vl);
重要的是,窗口和布局的高度未定义 您的意思是,打开的窗口保持了开头的大小,以后对其所做的更改不再影响高度?是的,完全正确。为了简单起见,首先我显示100行,子窗口默认提供滚动条。接下来的内容是10行,所以高度应该相应地设置。同样,如果下一个内容有100行,则不会显示滚动条。这怎么可能呢?我在上面试过了,但还是有同样的问题。还有其他建议吗?