16

UiBinder を使用して、GWT 2.0 で動作する単純なレイアウトを取得しようとしています。私が取得しようとしているレイアウトは、北、南、東、西、および中央の方向に異なるパネルを指定できる Java の BorderLayout を模倣したものです。そのために、DockLayoutPanel を使用しています。固定幅のヘッダーとフッターを取得したいと思います。残りのビューポート スペースは、DockLayoutPanel 中央スロットに割り当てられたウィジェットによって占有されます。

私が持っている現在の .ui.xml ファイルは次のとおりです。

<g:DockLayoutPanel unit='EM'>
    <g:north size='2'>
        <g:HTML>HEADER</g:HTML> 
    </g:north>

    <g:south size='2'>
        <g:HTML>FOOTER</g:HTML> 
    </g:south>

    <g:center>
        <g:HTML>
            <div id='loginform'>Hello!</div>
        </g:HTML>
    </g:center>
</g:DockLayoutPanel>

ブラウザーは左上隅の HEADER のみをレンダリングします。探しているレイアウトを実現するにはどうすればよいですか? GWT レイアウト パネルを使用する前に知っておく必要のある CSS が他にもあるようですが、それでは UI を作成する目的が無効になります。

4

3 に答える 3

30

これは、RaphaelO によって提案されたハックがなくても機能します。

DockLayoutPanel の Javadoc の例では、West の幅として 192 を使用しています。これは間違っています。作者はおそらく PX を使用していると思っていましたが、EM を使用していました。ズームアウトすると、中心が右端にあることがわかります。

標準モードの使用を確認しましたか? これは、DockLayoutPanel に必要です。

また、エントリポイント クラスに DockLayout を追加するときに RootLayoutPanel を使用する必要があることを忘れていました。RootPanel は使用しないでください。

于 2009-12-22T13:45:00.943 に答える
0

あなたのコード ブロックと、DockLayoutPanelの javadoc ページのサンプル ブロックを試しましたが、同様の結果が得られています。DockLayoutPanelのNorthセクションのデータのみが表示されているようです。ただし、ページを検索すると (Mac で firefox と safari を使用)、他の要素が見つかりますが、どこにも表示されません。このパネルと UiBinder にバグがあるようです。

于 2009-12-21T06:20:25.167 に答える