博为峰小博老师:
箱式布局组件之间没有空隙,那么就要通过一个称为填充物的组件来提供空隙。箱式布局管理器提供了3种填充物:支柱、固定区、弹簧。下面将通过实例来介绍如何使用箱式布局管理器布局。
publicclassBWF{
publicstaticintWIDTH=200;
publicstaticintHEIGHT=150;
publicstaticvoidmain(String args[]){
JFrame jf=newJFrame("测试箱式布局管理器");
jf.setSize(WIDTH,HEIGHT);
jf.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
JPanel contentPane=newJPanel();
JLabel label1=newJLabel("姓名:");//创建标签组件,文本框组件
JTextField textField=newJTextField(10);
textField.setMaximumSize(textField.getPreferredSize());
Box hbox1=Box.createHorizontalBox();//创建一个水平箱子
hbox1.add(label1);
//在水平箱子上添加一个标签组件,并且创建一个不可见的20个单位的组件
//在这之后再添加一个文本组件
hbox1.add(Box.createHorizontalStrut(20));
hbox1.add(textField);
JLabel label2=newJLabel("年龄:");//创建标签组件,文本框组件
JTextField textField2=newJTextField(10);
textField.setMaximumSize(textField2.getPreferredSize());
Box hbox2=Box.createHorizontalBox();//创建一个水平箱子
hbox2.add(label2);
//在水平箱子上添加一个标签组件,并且创建一个不可见的20个单位的组件
//在这之后再添加一个文本组件
hbox2.add(Box.createHorizontalStrut(20));
hbox2.add(textField2);
JButton button1=newJButton("确定");
JButton button2=newJButton("取消");
Box hbox3=Box.createHorizontalBox();
hbox3.add(button1);
hbox3.add(Box.createHorizontalStrut(20));
hbox3.add(button2);
Box vbox=Box.createVerticalBox();
vbox.add(hbox1);
vbox.add(Box.createVerticalStrut(10));
vbox.add(hbox2);
vbox.add(Box.createVerticalStrut(20));
vbox.add(hbox3);
//垂直箱子添加到BorderLayout布局管理器中的中间位置
contentPane.add(vbox,BorderLayout.CENTER);
jf.setContentPane(contentPane);
jf.setVisible(true);
}
}