有没有办法可以为Viewport设置最小宽度? Viewport应该像往常一样超出这个宽度。我在项目中使用GXT 2.2.5和GWT 2.4。
Thnx提前。
答案 0 :(得分:1)
与往常一样:设置类似
的内容body {
min-width: 1000px;
}
在CSS文件中。
如果您正在使用RootLayoutPanel或绝对定位的其他内容,请在该容器上设置最小宽度,例如
// Java:
RootLayoutPanel.get().addStyleName("requires-min-width");
// CSS:
.requires-min-width {
min-width: 1000px;
}
答案 1 :(得分:0)
直接从GXT 2.2.5源代码获取的类级别javadoc的第一句;
一个LayoutContainer,用于填充浏览器窗口并监视窗口大小调整。
因此,您不必设置最小宽度。它将填充浏览器窗口。然后,如果浏览器窗口调整大小,则应使用它调整大小。
答案 2 :(得分:0)
自己跑进去。 GWT 2.8和GXT 4.0.1
扩展Viewport类并覆盖onWindowResize和doLayout方法,如下所示
Viewport viewport = new Viewport() {
@Override
protected void onWindowResize(int width, int height) {
int minWidthChecked = Math.max(width, MIN_WIDTH);
int minHeightChecked = Math.max(height, MIN_HEIGHT);
super.onWindowResize(minWidthChecked, minHeightChecked);
}
@Override
protected void doLayout() {
Size size = getContainerTarget().getStyleSize();
size.setWidth(Math.max(size.getWidth(), MIN_WIDTH));
size.setHeight(Math.max(size.getHeight(), MIN_HEIGHT));
getContainerTarget().setSize(size);
super.doLayout();
}
};
这样,实现RequiresResize的视口的所有子节点都将获得适当的宽度和高度。如果页面小于分钟,则必须覆盖doLayout以更正初始加载时的大小。
最后确保应用以下样式
html {
overflow: auto !Important;
}
body {
min-width: 1024px;
min-height: 800px;
}
出于某种原因,我认为GWT将隐藏的溢出添加到html中。另一个好主意是使用GSS的@eval结构引用MIN_WIDTH和MIN_HEIGHT的值,这是在一个地方定义的。