博为峰Java技术文章 ——JavaSE Swing GroupLayout布局管理器

博为峰小博老师

GroupLayout的单词意思来看,以Group(组)为单位进行管理布局,把多个组件(如:JLable、JButton)按区域划分到不同的Group(组),再根据各个Group(组)相对于水平轴(Horizontal)和垂直轴(Vertical)的排列方式来管理。

public class BWF{

public static void main(String args[]){

JFrame jf=new JFrame("测试GroupLayout布局管理器");

  jf.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);

JPanel contentPane=new JPanel();

GroupLayout layout=new GroupLayout(contentPane);

JButton b1=new JButton("按钮1");

JButton b2=new JButton("按钮2");

JTextField text=new JTextField("文本");

//创建一个hsg组,将两个按钮一个一个的添加到组里面

GroupLayout.SequentialGroup hsg=layout.createSequentialGroup();

hsg.addComponent(b1);

hsg.addComponent(b2);

//创建一个hpg组,将文本框组件和上面的那个组添加到其中,并且居中排列

GroupLayout.ParallelGroup hpg=layout.createParallelGroup(GroupLayout.Alignment.CENTER);

hpg.addComponent(text).addGroup(hsg);

layout.setHorizontalGroup(hpg);//沿水平线来确定hpg组中两个按钮组件的位置

//创建一个vpg组,按照水平线来排列两个按钮组件的位置

GroupLayout.ParallelGroup vpg=layout.createParallelGroup();

vpg.addComponent(b1);

vpg.addComponent(b2);

GroupLayout.SequentialGroup vsg=layout.createSequentialGroup();

//将文本框组件和前面的容纳两个按钮组件的组同时添加到vsg组中

vsg.addComponent(text).addGroup(vpg);

//沿垂直线来确定vsgvpg和文本框组件的位置

layout.setVerticalGroup(vsg);

contentPane.setLayout(layout);

jf.setContentPane(contentPane);

jf.pack();

jf.setVisible(true);

}

}


上述实例先将两个按钮组件一个一个地放入到hsg组里,然后将文本框组件和hsg放到hpg组中,按照水平线对hsg中的两个按钮组件的位置进行排列,最后,再按垂直方式排列文本框组件和hsg组的位置。

  • 0
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值