我有一個Java程序,其中,我使用的是一個JTextField,但如果我沒有指定默認大小,它將有寬度0.我將它插入BorderLayout中,那麼如何擴展它以填充整個容器?如何使JTextField擴展一個BorderLayout(Java)
2
A
回答
5
在上面的例子中,文本字段將正常工作。但是,如果您插入EAST或WEST,它將不起作用。
import java.awt.BorderLayout;
import javax.swing.JFrame;
import javax.swing.JTextField;
public class TextFieldTest {
public static void main(String[] args) {
JFrame f = new JFrame();
f.setLayout(new BorderLayout());
JTextField tf = new JTextField();
f.getContentPane().add(BorderLayout.EAST, tf);
f.pack();
f.setVisible(true);
}
}
回到我的問題是:這是否需要是BorderLayout或您是否可以使用其他佈局管理器?如果可以的話,你應該檢查GridBagLayout,你可以有一個元素自動展開(使用重量)來適應整個容器。
0
它會自動填充到所述容器的寬度,示出例如:
import java.awt.BorderLayout;
import javax.swing.JFrame;
import javax.swing.JTextField;
public class TextFieldTest {
public static void main(String[] args) {
JFrame f = new JFrame();
f.setLayout(new BorderLayout());
JTextField tf = new JTextField();
f.add(tf, BorderLayout.SOUTH);
f.pack();
f.setVisible(true);
}
}
+0
不要在擺脫EDT的地方使用擺動組件! – 2009-02-27 14:40:18
1
使用Swing進行編程時,關鍵是要使用一個好的佈局管理器。對我來說,完美的佈局管理器是MigLayout。這只是針對所有佈局需求的最佳一站式解決方案。他們的網站提供了出色的文檔和示例
2
填充整個容器?使用BorderLayout?
container.add(jTextField, BorderLayout.CENTER);
就這麼簡單。
相關問題
- 1. 如何擴展JTextField以生成一個定義的響應focusgain
- 2. Java如何擴展一個隱藏類
- 3. Java中的每個類擴展Object.Then如何擴展其他類。因爲一個類只能擴展一個類
- 4. 如何擴展一個listview?
- 5. 如何擴展一個BufferedImage
- 6. 如何從另一個JtextField更新JTextField
- 7. 在BorderLayout中對齊JLabel和JTextField
- 8. 創建一個擴展另一個PHP擴展的PHP擴展?
- 9. WPF-如何讓任何時候只擴展一個擴展器
- 10. 設置邊框組件擴展了JTextField
- 11. 擴展了JTextField值取日期格式
- 12. 如何在一個JTextField
- 13. 如何從一個JTextField數據傳遞到另一個的JTextField
- 14. 如何在選擇文件時擴展/合同JTextField
- 15. 如何讓用戶控件擴展一個擴展UserControl的類?
- 16. 如何讓一個擴展擴展向上
- 17. jQuery:如何擴展擴展?
- 18. 如何在Scala中擴展一個擴展另一個類的類型參數的java類?
- 19. 擴展一個擴展類的模塊
- 20. 擴展點引用另一個擴展
- 21. 如何從一個超類擴展事物? (Java)
- 22. 如何在Jython中擴展一個java類?
- 23. 如何分割一個字符串基於擴展ascii在java
- 24. 如何擴展由另一個類實例化的java類?
- 25. 如何做一個泛型類T的「新」擴展AbstractClass(JAVA)
- 26. 如何多次擴展一個包?
- 27. 如何在沒有一個擴展
- 28. iOS如何僅擴展一個單元
- 29. 如何在JavaScript中擴展一個類
- 30. 如何爲Jinja2寫一個「joiner」擴展?
我沒有得到任何選票的接受答案? Niiiice! – Ascalonian 2009-03-17 17:54:50