在 swing 中,除了使用布局管理器之外还可以使用绝对布局。下面我们就来简单了解一下什么是绝对布局。
绝对布局,就是硬性指定组件在容器中的位置和大小,可以使用绝对坐标的方式来指定组件的位置。
使用绝对布局的步骤如下:
(1)使用 Container.setLayout(null) 方法取消布局管理器;
(2)使用 Container.setBounds() 方法设置每个组建的大小和位置。
下面我们来看一个绝对布局的例子。
在项目中创建继承 JFrame 窗体组件的 AbsolutePosition 类,设置布局管理器为 null,即使用绝对定位的布局方式,创建两个按钮组件,将按钮分别定位在不同的窗体位置上。代码如下:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
|
public class AbsolutePosition extends JFrame { public AbsolutePosition() { setTitle( "本窗体使用绝对布局" ); setLayout( null ); setBounds( 0 , 0 , 200 , 150 ); Container c = getContentPane(); JButton b1 = new JButton( "按钮1" ); JButton b2 = new JButton( "按钮2" ); b1.setBounds( 10 , 30 , 80 , 30 ); b2.setBounds( 60 , 70 , 100 , 20 ); c.add(b1); c.add(b2); setVisible( true ); setDefaultCloseOperation(WindowConstants.EXIT_ON_CLOSE); } public static void main(String[] args) { new AbsolutePosition(); } } |
在本实例中,窗体的大小、位置及窗体内组件的大小与位置都被进行绝对布局操作。绝对布局使用 setBounds(int x,int y int width,int height)方法进行设置。
以上就是绝对布局的介绍和实例,谢谢大家对服务器之家的支持。