私はGWTに新たなんだので、次のように助けを必要に応じて、GWTのボタンを配置します添付)。これはどうすればいいですか?私はどんな助けにも感謝しています!は自動的にサイズ
Q
は自動的にサイズ
2
A
答えて
1
私はあなただけ左それらをフロートするために追加のCSSスタイルを使用してウィジェットを配置し、私のコメントで言ったように。 GWTコンテナとしては、FlowPanelがあります。
CSS:
.yourWidget {
float: left;
..other styles..
}
.container {
width: 300px;
overflow: hidden;
}
コード:
YourButtonWidget w1 = new YourButtonWidget("Some long label");
w1.addStyleNames("yourWidget"):
YourButtonWidget w2 = new YourButtonWidget("Label");
w2.addStyleNames("yourWidget"):
YourButtonWidget w3 = new YourButtonWidget("Another Label");
w3.addStyleNames("yourWidget"):
FlowPanel container = new FlowPanel();
container.add(w1);
container.add(w2);
container.add(w3);
はもちろん、あなたのボタンを表すウィジェットの一部としてCSSスタイルを統合することができます。あなたのウィジェットはそれ自身に幅を割り当てなければならないことを覚えておいてください。あるいはfloat: left;
は明らかに機能しません。
UPDATE:あなただけのコンテナ内のすべての利用可能なスペースを埋めるために、ボタン1と2の幅を調整するためのアルゴリズムを開発しなければならない、そのために私は、あなたの最後のコメントをお読みください。 float: left;
は作業をスチールしますが、ボタンのサイズを調整するだけです。
3つのボタンで、それは簡単だ(button1Widthとbutton2Widthは動的であり、button3Widthは固定である。)ここでは、(上から継続)の最終幅をうまくする方法である:
int containerWidth = container.getElement().getOffsetWidth();
int button1Width = w1.getElement().getOffsetWidth();
int button2Width = w2.getElement().getOffsetWidth();
int button3Width = w3.getElement().getOffsetWidth();
if ((button1Width + button2Width) > containerWidth) {
button1Width = containerWidth;
if ((button2Width + button3Width) > containerWidth) {
button2Width = containerWidth;
} else {
button2Width = containerWidth - button3Width;
}
} else {
button2Width = containerWidth - button1Width;
}
w1.getElement().getStyle().setWidth(button1Width,Unit.PX);
w2.getElement().getStyle().setWidth(button2Width,Unit.PX);
w3.getElement().getStyle().setWidth(button3Width,Unit.PX);
はちょうどあなたが行うことを確認してくださいこれらの調整の後にあなたはDOMにすべてを添付します。そうでなければ、幅は明らかに利用できません。
関連する問題
- 1. iOS静的テーブルテキストベースの自動サイズ変更
- 2. 自動サイズ調整の見通しカスタムタスクペイン自動的
- 3. LaTeXでA4サイズに自動的にサイズを変更するには
- 4. カラムはQTableViewのサイズに自動的にリサイズされます
- 5. tableViewCellサイズを自動的に作成するには?
- 6. wpfでリッチテキストボックスを自動的にサイズにする方法は?
- 7. Jsplitpaneは自動的にサイズ変更されます
- 8. JTreeオブジェクトのサイズを自動的に変更する方法は?
- 9. UITextViewのサイズを自動的に調整する方法は?
- 10. listboxitemのサイズを自動的に調整する方法は?
- 11. 自動 - NatTableを動的にサイズ変更する
- 12. は自動的に
- 13. は自動的に
- 14. サイズ変更は動的に
- 15. 親コンテナのサイズ変更時にdojo dijit.Gridウィジェットのサイズを自動的に変更
- 16. ピボットテーブルに合わせてデータテーブルのサイズを自動的に変更
- 17. は自動的
- 18. は自動的
- 19. は自動的
- 20. は自動的
- 21. は自動的
- 22. は自動的
- 23. 自動サイズSilverlightアプリケーション
- 24. java - 自動サイズJFrame
- 25. 自動サイズのTextBlock
- 26. TStringGrid行のサイズを自動的に変更する方法
- 27. ボタンのサイズを自動的に小さくする方法
- 28. ExtJS:ウィンドウ上のフォームフィールドのサイズを自動的に変更する
- 29. JPanelの最小サイズを自動的に設定
- 30. コマンドラインウィンドウのサイズを自動的に変更する
最終的にあなたの写真のように見えるように各ボタンの幅を調整する必要がありますか、単に隣り合わせにする方法を探しています。また、ボタンの行に余裕がなければ次の行に進むだけですか?後者の場合は、ボタンに固定幅を与えて 'float:left;'に設定するだけで実現できます。 – Strelok
これは画像とまったく同じように見えます。利用可能な水平スペース全体をボタンで埋めるようにしたいので、 'float:left;'は機能しません。たとえば、ボタンを配置したい領域は幅300ピクセルです。ボタン1の幅は250ピクセルです。ボタン2はボタン1の横には収まらないため、ボタン1は300pxの幅を、ボタン2と3は次の行に移動します。 – Skinny
しかし、それはちょうど '浮動小数点:左;'が行うことです...または私は何かを誤解しています。それをチェックしてください:http://jsfiddle.net/heC6Z/ – Strelok