我是GWT的新手,我可能会忽略一些简单的事情。所以我想要做的是在我的html页面中,我在body标签中为我的页面创建了一个布局:
<table id="wrapper" cellpadding="0" cellspacing="0" style="width: 100%;height: 100%;">
<!-- Header row -->
<tr style="height: 25%;">
<td colspan="2" id="header"></td>
</tr>
<!-- Body row and left nav row -->
<tr style="height: 65%;">
<td id="leftnav"></td>
<td id="content"></td>
</tr>
<!-- Footer row -->
<tr style="height: 10%;">
<td colspan="2" id="footer"></td>
</tr>
</table
我已将Ids设置为所有内容,以便我可以在入口点获取这些项目。所以在我的入口点我尝试填充这些字段:
RootPanel.get("header").add(new Header());
RootPanel.get("leftnav").add(new NavigationMenu());
RootPanel.get("footer").add(new Footer());
但是我通过调试了解到RootPanel.get(&#34; header&#34;)返回null。我确信其余的都返回null,它只是在它到达之前崩溃。据我所知,这是做事的正确方法,但我一定错过了一些东西。请让我知道我做错了什么或者你需要更多信息。感谢
答案 0 :(得分:1)
尝试在HTML中使用div标签:
<table id="wrapper" cellpadding="0" cellspacing="0" style="width: 100%;height: 100%;">
<!-- Header row -->
<tr style="height: 25%;">
<td colspan="2"><div id="header"></div></td>
</tr>
<!-- Body row and left nav row -->
<tr style="height: 65%;">
<td><div id="leftnav"></div></td>
<td><div id="content"></div></td>
</tr>
<!-- Footer row -->
<tr style="height: 10%;">
<td colspan="2"><div id="footer"></div></td>
</tr>
</table
答案 1 :(得分:1)
通常使用div
标记比其他类型的元素(例如<td>
)更有效。就像评论所说的那样,你应该尝试使用一个RootPanel
,然后添加然后使用GWT面板创建你的布局。
使用UiBinder
布局HTML页面等页面的一种非常好的方法。您可以使用非常接近HTML的XML语言编写布局,同时使用所有有用的GWT小部件。如果您要使用GWT构建应用程序,那么使用和学习非常有用。