注释很详细,直接上代码
新增内容:
Boxlayout布局中的四种分割方式
1.createHorizontalGlue()(水平自适应分隔)
2. createHorizontalStrut(x)(水平自定义分隔)
3. createVerticalGlue()(垂直自适应分隔)
4.createVerticalStrut(x)(垂直自定义分隔)
import javax.swing.*;
import java.awt.*;
import java.awt.event.WindowAdapter;
import java.awt.event.WindowEvent;
public class swing_test_9 {
public static void main(String[] args) {
Frame frame =new Frame("测试Boxlayout的各种分隔方式");
//监听器,点击窗口关闭键关闭窗口
frame.addWindowListener(new WindowAdapter() {
@Override
public void windowClosing(WindowEvent e) {
System.exit(0); // 关闭程序
}
});
//创建水平Box容器hBox
Box hBox =Box.createHorizontalBox();
//往hBox容器中添加按钮以及其中分隔
hBox.add(new Button("水平按钮1"));
hBox.add(Box.createHorizontalGlue());//随窗口大小变化的水平分隔
hBox.add(new Button("水平按钮2"));
hBox.add(Box.createHorizontalStrut(30));//自定义大小的水平分隔
hBox.add(new Button("水平按钮3"));
//创建垂直排列的Box容器vBox
Box vBox =Box.createVerticalBox();
//往vBox容器中添加按钮以及其中分割
vBox.add(new Button("垂直按钮1"));
vBox.add(Box.createVerticalGlue());//随窗口大小变化的垂直分隔
vBox.add(new Button("垂直按钮2"));
vBox.add(Box.createVerticalStrut(30));//自定义大小的垂直分隔
vBox.add(new Button("垂直按钮3"));
//把两个box容器添加到frame容器中
frame.add(hBox,BorderLayout.NORTH);
frame.add(vBox,BorderLayout.CENTER);
frame.pack();
frame.setVisible(true);
}
}
运行效果: