setSize()、setPreferredSize()都可以设置组件的大小,但二者的使用有所不同。
1、setSize()的使用方式
- setSize(int width,int height)
- setSize(Dimension d)
2、setPreferredSize()的使用方式
- setSize(Dimension d)
setPreferredSize()是设置首选尺寸。一般情况下:
- 如果该组件受布局管理器管理(使用默认的也算),需要使用setPreferredSize()设置尺寸,setSize()无效。
- 如果该组件不受布局管理器管理,需要使用setSize(),setPreferredSize()无效。
比如:
JFrame设置了布局管理器,往JFrame中添加一个JLabel,JLabel受布局管理器管理,需要使用setPreferredSize(),setSize()无效。受指的是JLabel,不是布局管理器所在的容器JFrame,JFrame没有受到布局管理器的管理,要使用setSize()。
是说该组件受到布局管理器的管理,不是说该组件本身设置了布局管理器。
3、Dimension的使用方式
构造函数:
- Dimension(int width,int height) //只能是int ,不能是double
常用方法:
- getWidth/Height() //返回值均为double。也可直接访问属性width、height。
- setSize(int width,int height) //不能单独设置其中一个
- setSIze(double width,double height)