首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >Java:组件中setPreferredSize()和setSize()方法的区别

Java:组件中setPreferredSize()和setSize()方法的区别
EN

Stack Overflow用户
提问于 2009-11-23 23:21:33
回答 3查看 123.8K关注 0票数 108

setSize()setPreferredSize()之间的主要区别是什么?有时我用setSize(),有时用setPreferredSize(),有时一个做我想做的事,有时用另一个。

我应该对JFrame%s和JPanel%s使用什么调用?

EN

回答 3

Stack Overflow用户

发布于 2009-11-23 23:57:43

当没有使用布局管理器时,可以使用setSize()setBounds()

但是,如果您正在使用布局管理器,则可以使用setPreferredSize()setMinimumSize()setXXXSize()方法向布局管理器提供提示。

并确保组件的容器使用符合请求大小的布局管理器。FlowLayoutGridBagLayoutSpringLayout管理器使用组件的首选大小(后两个取决于您设置的约束),但BorderLayoutGridLayout通常不这样做。如果您为已经可见的组件指定新的大小提示,则需要对其调用revalidate方法,以确保重新布局其包含层次结构。然后调用重绘方法。

票数 10
EN

Stack Overflow用户

发布于 2009-11-23 23:26:24

setSize会将组件大小调整为指定的大小。

setPreferredSize设置首选大小。组件实际上可能不是这个大小,这取决于它所在的容器的大小,或者用户是否手动调整了组件的大小。

票数 7
EN

Stack Overflow用户

发布于 2009-11-23 23:29:55

IIRC ..。

setSize设置组件的大小。

setPreferredSize设置首选大小。布局管理器将尝试为您的组件安排这么大的空间。

这取决于你是否在使用布局管理器...

票数 4
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/1783793

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档