Eclipse
步骤一 : 新建工程和类,写一个初步的窗口程序我们的窗口中什么也不添加,在 “initUI”中我们将使用“空布局”,向窗口容器中添加组件!
步骤二 : 初始化组件,将组件以“空布局”的形式添加到窗口容器中我们这里构建一个应用的登陆界面,包含两个标签(JLabel),两个输入框(JTextField),两个按钮(JButton);我们将容器的布局方式设置为 '空布局',并将组件以绝对位置的形式(这就是“空布局”也被称为“绝对布局”的原因)放置在容器中!相关代码为 : // javax.swing.JPanel 代表一张画布(标准称呼是容器)// 其代表一个空间,用户放置其他可视性的控件 比如按钮,文本等 JPanel contentPanel = new JPanel(); // 设置这个容器的布局方式是空布局 contentPanel.setLayout(null); // 初始化所需组件 JLabel nameLabel = new JLabel('用户名 :'); JTextField nameTxt = new JTextField(); JLabel pwLabel = new JLabel('密码 :'); JTextField pwTxt = new JTextField(); JButton forgetPwBtn = new JButton('忘记密码'); JButton loginBtn = new JButton('登陆'); // 将组件全部添加到容器中 contentPanel.add(nameLabel); contentPanel.add(nameTxt); contentPanel.add(pwLabel); contentPanel.add(pwTxt); contentPanel.add(forgetPwBtn); contentPanel.add(loginBtn); // 调用 setBounds(x,y,width,height) 设置组件的特定位置// 对应四个参数分别为 : 横坐标,纵坐标,组件宽度,组件高度 nameLabel.setBounds(140, 100, 60, 35); nameTxt.setBounds(210, 100, 250, 35); pwLabel.setBounds(140, 160, 60, 35); pwTxt.setBounds(210, 160, 250, 35); forgetPwBtn.setBounds(140, 220, 100, 35); loginBtn.setBounds(350, 220, 100, 35); // 最后将这张画布添加到窗口中显示 getContentPane().add(contentPanel);我们要重点关注所有组件调用的 setBounds 方法, 这个方法是“空布局”的精髓!通过这个方法,我们把已添加到容器中的组件放置在一个固定的位置上!并且可以设置组件的显示高度和宽度!
步骤三 : 运行查看界面效果我们可以看到,组件按照我们的设置被放置在界面的特定区域!通过界面,我们可以看到 setBounds(x, y, width, height) 方法四个参数的具体含义!
setBounds方法的使用!坐标可能需要多次试验才能确定具体值!