当我创建一个带有子组件的JFrame时,它会打开一个窗口可以达到的最小宽度,当我希望宽度是显示没有水平滚动条的窗口内容的最小大小时。
如何确定最小尺寸应该是多少? UI中显然某些知道,因为当足够宽时,水平滚动条消失。这是我想要创建窗口的状态。我如何获取该数字,我怀疑我会返回作为getPreferredSize的覆盖?至于一个首选的高度,这是任意的。
答案 0 :(得分:3)
据我所知,当您使用pack()
方法时,它会自动选择手中所有组件所需的最小尺寸。
在another问题中,涵盖了这个主题:
pack方法调整框架的大小,使其所有内容都为或 高于他们的首选尺寸。打包的另一种方法是建立一个 通过调用setSize或setBounds(也设置)显式显示帧大小 框架位置)。一般来说,使用pack比调用更可取 setSize,因为pack离开框架布局管理器负责 框架大小,布局管理员善于适应平台 依赖关系和影响组件大小的其他因素。