【发布时间】:2011-09-17 02:26:28
【问题描述】:
我不清楚setSize() 和setPreferredSize() 之间的区别。
如果我使用setSize() 而不是setPreferredSize() 会发生什么。
pack() 方法究竟是做什么的?
【问题讨论】:
-
答案与您使用的布局管理器有关。有些人不在乎
setSize()
标签: java swing user-interface
我不清楚setSize() 和setPreferredSize() 之间的区别。
如果我使用setSize() 而不是setPreferredSize() 会发生什么。
pack() 方法究竟是做什么的?
【问题讨论】:
setSize()
标签: java swing user-interface
在窗口上调用pack() 将根据其包含组件的preferredSize 来调整它的大小。它将尽可能小,但要考虑到其组件的首选大小和布局。
如果您只是随机使用frame.setSize(),则添加到内容窗格的组件将扩展/收缩以适应可用空间,这意味着可能会覆盖每个组件的首选大小。
setSize() 设置组件的大小,setPreferredSize 设置首选大小。布局管理器将尝试为您的组件安排那么多空间。
这取决于您是否使用布局管理器...
见Java: Difference between the setPreferredSize() and setSize() methods in components
【讨论】: