2010-07-27 29 views
0

我想在邊界佈局的北部位置創建一個JLabel(包含圖像),該邊界佈局可自動調整大小以匹配首選寬度組件位於邊界佈局的中心位置。如何在Borderlayout北部位置創建自動調整大小的組件

我現在可以做到的唯一方法是在北面創建另一個面板,並在該面板的中心位置添加標籤。

有沒有辦法做到這一點沒有額外面板?

+0

你得到答案嗎?如果不檢查我的答案:)。 – YoK 2010-07-28 03:18:46

回答

1

沒有必要添加額外的面板,因爲我看到你只需要在北方的標籤(即頂部)。 在borderlayout中向北添加的組件將佔據完整的寬度並且高度將被優先組件的高度。這是由各種因素決定的。

你只需要照顧在中心設置標籤文本和圖像。看看標籤的排列api是否相同。

詳細說明: http://www.ehow.com/way_5579409_java-borderlayout-tutorial.html

例如

http://www.java2s.com/Tutorial/Java/0240__Swing/1340__BorderLayout.htm

http://download.oracle.com/docs/cd/E17409_01/javase/tutorial/uiswing/layout/border.html

0

嗯,我不確定我是否理解這個問題。 JLabel本身不會「自動化」。標籤的大小是添加到標籤的圖標的大小。所以即使寬度發生變化,圖像的大小也不會改變。

也許你可以使用:

label.setAlignmentX(...); 
label.setHorizontalAligment(...); 

水平居中的標籤,在面板的北部,如果那是你的問題是什麼。

你爲什麼不發佈你目前正在工作的SSCCE,顯示你在做什麼。另外,使用第二個面板的問題是什麼?

相關問題