2012-04-14 57 views
7

可能重複:
setMaximumSize not working in java的Java Swing setMaximumSize不工作

我有我的JFrame子類的麻煩。我需要設置最大高度。

setMaximumSize不起作用。這似乎是在Java(setMinimumSize作品)的錯誤。如何防止JFrame高於給定的高度?

+0

定義 「不工作」? – simchona 2012-04-14 22:43:19

+0

好吧。我在我的JFrame上使用setMaximumSize。但是我仍然可以放大JFrame以超出我設定的限制。 – 2012-04-14 22:44:38

+0

你可能會感興趣http://stackoverflow.com/questions/4061010/setmaximumsize-not-working-in-java – simchona 2012-04-14 22:45:40

回答

5

使用此而不是/以及:

setPreferredSize(new Dimension(width, height)); 

以我的經驗setPreferredSize(Dimension)花費偏好和總是工作。

我通常使用所有的人無論如何:setMinimumSize()setMaximumSize()setPreferredSize() 然後setSize()以及

6

根據我的經驗,了setMinimumSize和setMaximumSize是不可靠的 - 他們可能在某些情況下工作,但往往不是在別人

最好的解決辦法是使用的ComponentListener,實施的componentResized和執行最小/最大尺寸這樣

+2

+1另請參閱[我應該避免使用Java Swing中的set(Preferred | Maximum | Minimum)Size方法](http://stackoverflow.com/q/7229226/230513)? – trashgod 2012-04-15 02:25:52

+0

你能詳細說明一下嗎?如何通過捕獲調整大小事件來實施最小/最大大小? AFAIK這些事件是作爲通知被觸發的,並不會有助於強制執行大小限制。 – Lieuwe 2016-05-10 08:37:17