0

我正在尝试在 ScrollPanel 中使用 AbsolutePanel。我希望 ScrollPanel 占据尽可能多的页面高度,以尽可能多地暴露 AbsolutePanel。

我试过这个。但是没有出现 ScrollPanel 和内容

        <g:center height="100%">
            <g:DecoratorPanel>
                <g:ScrollPanel width='800px'>
                    <g:AbsolutePanel width='770px' height='1000px' ui:field='absolutePanel'/>
                </g:ScrollPanel>
            </g:DecoratorPanel>
        </g:center>

如果我输入一个 ScrollPanel 绝对高度(height='800px'),它会出现在页面上,并且可以工作 - 但是,我不确定用户在浏览器上的高度,所以我不想硬编码 800px

        <g:center height="100%">
            <g:DecoratorPanel>
                <g:ScrollPanel width='800px' height='800px'>
                    <g:AbsolutePanel width='770px' height='1000px' ui:field='absolutePanel'/>
                </g:ScrollPanel>
            </g:DecoratorPanel>
        </g:center>

反正有一个 100% 的父高度,ScrollPanel,里面有一个绝对面板吗?

4

2 回答 2

1

所以,你想设置的高度(100%)scroll panel

I'm not really sure what the height the user has on the browser.

上述问题的答案是

窗户。获取客户端高度();

Gets the height of the browser window's client area excluding the scroll bar. 

上面的方法返回一个 int 然后你可以调用panel.setHeight(returned+"px").

于 2013-03-09T09:46:57.900 回答
0

它根本不合逻辑。绝对 - 意味着固定。你为什么要绝对改变它的高度/宽度。如果您希望面板大小发生变化,请使用 FlowPanel 或任何其他内容面板。

此外,如果您正在考虑响应式设计,您应该参考 gwt 文档,以便将LayoutPanels与 RootLayoutPanel 一起使用。

阅读GWT 布局面板概念背后的设计思想,这与早期的 .

另外,了解调整大小的概念

检查并观察 GWT 展示。即使使用网格数据,也可以更改浏览器大小和应用程序调整大小。

您可以从GWT下载源代码并提取示例/展示项目。注意 - 由于 GWT 试图演示的其他功能,代码过于复杂。

于 2013-03-08T14:59:46.773 回答