2

私は GWT に不慣れで、単純なものを見落としている可能性があります。だから私がやろうとしているのは、bodyタグで自分のページのレイアウトを作成したhtmlページです:

<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>。コメントが言うように、1つだけを使用してRootPanelから追加してから、GWTパネルでレイアウトを作成してください。

HTML ページのようにページをレイアウトする非常に良い方法は、 を使用することUiBinderです。HTML に非常に近い XML 言語を使用してレイアウトを書き出すと同時に、便利な GWT ウィジェットをすべて使用できます。GWT を使用してアプリを作成する場合は、使用して学習すると非常に役立ちます。

于 2013-03-21T02:04:40.623 に答える