2

我是 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

我已将 Id 设置为所有内容,以便我可以在入口点中获取这些项目。因此,在我的入口点中,我尝试像这样填充这些字段:

RootPanel.get("header").add(new Header());
RootPanel.get("leftnav").add(new NavigationMenu());
RootPanel.get("footer").add(new Footer());

但是我通过调试了解到 RootPanel.get("header") 返回 null。我确信其余的也返回 null,它只是在到达那里之前崩溃了。据我了解,这是做事的正确方法,但是我一定错过了一些东西。请让我知道我做错了什么,或者如果您需要更多信息。谢谢

4

2 回答 2

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
于 2013-03-20T20:01:37.973 回答
1

通常使用div标签会比其他类型的元素效果更好,例如<td>. 就像评论说的那样,您应该尝试只使用一个RootPanel,然后添加然后使用 GWT 面板创建您的布局。

像 HTML 页面一样布局页面的一种非常好的方法是使用UiBinder. 您可以使用非常接近 HTML 的 XML 语言编写布局,同时使用所有有用的 GWT 小部件。如果您将使用 GWT 构建应用程序,使用和学习它非常有用。

于 2013-03-21T02:04:40.623 回答