2012-10-31 35 views
1

我有一個BorderLayout,其中包含North,West和Center組件的佈局。這是我的問題:我的中心組件中有一個textField,它擴展了它的父佈局的整個寬度。指定textField寬度的Java GUI

它看起來是這樣的......

=============================================================================== 
|                    | 
|        NORTH          | 
=============================================================================== 
| WEST  |     CENTER          | 
|    | textField: __________________________________________________ | 

我想讓它這樣的文本框不會延長整個佈局,但有一個固定的大小和中心部分內的中心。

我已經嘗試設置preferredSize但沒有運氣。下面的代碼...

rText = new JTextField("1000"); 
    rText.setPreferredSize(new Dimension(20, 10)); 
+0

糟糕,這就是我的意思 –

回答

7

要居中JTextField的,把它變成了自己的JPanel,使用默認的FlowLayout,並補充說,做(我認爲)用容器的borderlayout。爲了給JTextField一個很好的寬度,在構建它時給它一個列大小。 不要設置它的preferredSize,因爲它在不同平臺上表現不佳。即

rText = new JTextField("1000", 10); 
+0

與列大小相結合的flowlayout做了訣竅,謝謝! –

+0

不客氣! –

+1

@JamesFazio不要忘記接受這個答案。 –