2014-04-06 28 views
2

我正在學習如何使用鞦韆,請耐心等待。看一看附截圖:如何在周圍的JPanel底部對齊這些JPanel?

JFrame

這是一個JFrame內的JLabel中的JLabel。我想將這些內部JLabel(它們在運行時隨機生成大小和顏色)移動到最底部,就好像它們是架子上的書一樣。我知道佈局經理,但我似乎無法找到合適的人去做我想做的事。該屏幕截圖顯示了指定none的結果,因此它應該默認爲FlowLayout。

內部JLabels只是.add()編輯沒有任何位置完成。 SetLocation似乎什麼也不做。

你能幫我嗎?

+0

我不會使用JLabels,而是在JPanel或BufferedImage上繪製圖像,精靈。 –

+0

否則,如果設置正確,BoxLayout可能適用於您。 –

+0

在改變寬度的同時,您可能希望書本上的高度更接近常數。此外,你想垂直對齊你的書在底部,所以它看起來更像書架上的書。 –

回答

2

如果我是你,我會添加將這些JLabel放入帶有boxlayout的JPanel中,然後將其與邊界佈局對齊。下面是一些代碼來幫助你:

JLabel outer = new JLabel(); 
outer.setLayout(new BorderLayout(0,0)); 
/** Add inner JLabels here. The other you add them is the order they will appear from to right**/ 
JPanel bookshelf = new JPanel(); 
bookshelf.setLayout(new BoxLayout(toolbar, BoxLayout.X_AXIS)); 
//Add your jlabels to the bookshelf 
outer.add(bookshelf, BorderLayout.SOUTH); 

Here是在佈局管理器一個偉大的教程。 另外here是我設計的UI,與我想要的相似。

希望這可以幫助你。