【发布时间】:2012-01-02 16:39:01
【问题描述】:
看起来您必须指定除一个子面板以外的所有子面板的绝对大小。比如来自GWT docs:
DockLayoutPanel p = new DockLayoutPanel(Unit.EM);
p.addNorth(new HTML("header"), 2);
p.addSouth(new HTML("footer"), 2);
p.addWest(new HTML("navigation"), 10);
p.add(new HTML(content));
但我想要由浏览器调整大小的北面板。我在里面放了一些文字或按钮,我不知道它的大小,我只知道它比较薄并且在页面的顶部。而且我希望内容占据其余空间,但不会更多,因此没有浏览器滚动条。有没有办法用这些较新的布局面板来处理这个问题?
现在我使用的是旧版面板,并且我有一个带有Window.addResizeHandler 的处理程序,它设置主要内容区域的高度,以便所有内容都适合Window.getClientHeight
更新:
Thomas 建议在 HeaderPanel 中使用 DockLayoutPanel,但这对我不起作用:
<g:HeaderPanel>
<g:Label>Header top</g:Label>
<g:DockLayoutPanel unit='PX'>
<g:west size='300'>
<g:Label>West</g:Label>
</g:west>
<g:center>
<g:Label>Center</g:Label>
</g:center>
</g:DockLayoutPanel>
</g:HeaderPanel>
“标题顶部”在那里,其余部分不可见。看起来内部 div 的高度为 0。
【问题讨论】:
-
嗨,你找到解决办法了吗?我正在尝试做同样的事情,我已经在这个问题上浪费了太多时间。干杯。
-
我认为我必须使用调整大小处理程序并自己手动计算和调整大小。我已经放弃了 GWT。
-
感谢您的更新。我希望我也能这样做:)
-
作为一个有趣的问题,我可以问你是否转移到另一个框架,如果是,是哪个?总的来说,我觉得 GWT 很有用,但我觉得它有点笨拙,我很想看看另一个类似的工具包。
-
我没有找到类似的工具包。最近,我正在学习使用 Angular。我对它太缺乏经验,无法推荐它,但到目前为止它看起来不错。我仍然希望看到类似 JVM 字节码到 js 编译器的东西。