Java中层JLayeredPane使用的小例子

import java.awt.Rectangle;
import java.awt.event.ActionEvent;
import java.awt.event.ActionListener;

import javax.swing.JButton;
import javax.swing.JFrame;
import javax.swing.JLayeredPane;

/**
 * 层JLayeredPane使用的小例子
 *
 * @author 五斗米 <如转载请保留作者和出处>
 * @blog http://blog.csdn.net/mq612
 */
public class Test extends JFrame implements ActionListener {

 private static final long serialVersionUID = 4785452373598819719L;

 private JButton b_a = null, b_b = null;

 private JLayeredPane lp = null; // 我们要用到的层

 public Test() {
  super("JLayeredPane");

  lp = this.getLayeredPane(); // 获取JLayeredPane

  b_a = new JButton("A");
  b_b = new JButton("B");

  b_a.addActionListener(this); // 按钮事件
  b_b.addActionListener(this);

  lp.add(b_a, new Integer(200)); // 将组件添加到JLayeredPane中,指定所在的层
  lp.add(b_b, new Integer(300));

  b_a.setBounds(new Rectangle(100, 100, 100, 100)); // Button出现位置
  b_a.setVisible(true); // 显示

  b_b.setBounds(new Rectangle(50, 50, 100, 100));
  b_b.setVisible(true);

  this.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
  this.setSize(360, 260);
  this.setVisible(true);
 }

 public void actionPerformed(ActionEvent e) {
  if (e.getActionCommand().equals("A")) { // 判断是哪个按钮的动作
   lp.setLayer(b_a, new Integer(300)); // 重新设置组件层数
   lp.setLayer(b_b, new Integer(200));
  } else if (e.getActionCommand().equals("B")){
   lp.setLayer(b_a, new Integer(200));
   lp.setLayer(b_b, new Integer(300));
  }
 }

 public static void main(String args[]) {
  new Test();
 }

}

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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值