我不清楚setSize()
和setPreferredSize()
之间的区别。
如果我使用setSize()
代替setPreferredSize()
会发生什么。
pack()
方法究竟做了什么?
答案 0 :(得分:18)
在窗口上调用pack()
将根据其包含组件的preferredSize调整大小。它将尽可能小,但要考虑其组件的preferredSize和布局。
如果您只是随机使用frame.setSize()
,则添加到内容窗格的组件将展开/收缩以适应可用空间,这意味着可以覆盖每个组件的首选大小。
setSize()
设置组件的大小,setPreferredSize
设置首选大小.Brassuremanager将尝试为您的组件安排那么多空间。
这取决于你是否使用布局管理器......
请参阅Java: Difference between the setPreferredSize() and setSize() methods in components