2014-04-24 38 views
0

我是一名初學者,我想在java中設計windows計算器的gui。我已經設置了一些jpanels(Gridlayout),每個jbuttons。我這樣設置按鈕的大小:如何設置特定佈局中jpanel組件的大小?

jButton[i].setPreferredSize(new Dimension(42, 42)); 

但不同的jpanels中的按鈕不具有相同的大小。 我該怎麼辦?

+0

你可以發佈你現在擁有的所有代碼嗎? –

+0

不幸的是,這裏不允許! – Mehry

+1

[當您確實想要覆蓋'getPreferredSize()'](http://stackoverflow.com/q/7229226/230513)時,不要使用'setPreferredSize()'。 – trashgod

回答

1
jButton[i].setPreferredSize(new Dimension(42, 42)); 

有3種簡單的方法可以使按鈕變大。

  • 使用大Icon爲按鈕
  • 使用一個大Font爲按鈕(優選經由PLAF)。
  • 圍繞文字和圖標設置較大的空白。

至於設置首選大小。請參閱Should I avoid the use of set(Preferred|Maximum|Minimum)Size methods in Java Swing?(是)

如果您仍然打算沿着該路線行事,請參閱@trashgod和替代的首選大小。

0

您還應該爲您的jpanel設置相同的尺寸

即, jpanel.setBounds(startingWidth, startingHeight, actualWidth, actualHeight);

然後將這些添加到您的容器面板。

+0

Java GUI可能需要在多種平臺上工作,使用不同的屏幕分辨率並使用不同的PLAF。因此,它們不利於組件的準確放置。爲了組織強大的圖形用戶界面,請使用佈局管理器或[它們的組合](http://stackoverflow.com/a/5630271/418556)以及[空格]的佈局填充和邊框(http: //stackoverflow.com/q/17874717/418556)。 –

相關問題