2012-04-14 58 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