盒子

import java.awt.*;
import java.awt.event.ActionEvent;
import java.awt.event.ActionListener;
import javax.swing.*;
public class Box {
   JFrame frame;
   JButton button1,button2,button3,button4;
   JLabel label1,label2;
   JPanel panel1,panel2;
   boolean off =false;
   public static void main(String args[]){
      Box box=new Box();
      box.go();
   }
   void go(){
      frame=new JFrame("盒子");
      button1=new JButton("B1");
      button2=new JButton("B2");
      button3=new JButton("B3");
      button4=new JButton("B4");
      button1.setToolTipText("打开电源");
      button2.setToolTipText("L1灯亮");
      button3.setToolTipText("L2灯亮");
      button4.setToolTipText("关闭电源");
      label1=new JLabel();
      label1.setBorder(BorderFactory.createLineBorder(Color.white,60));
      label2=new JLabel();
      label2.setBorder(BorderFactory.createLineBorder(Color.white,60));
      JPanel panel1 =new JPanel();
      JPanel panel2 =new JPanel();
      panel1.add(label1,BorderLayout.WEST);
      panel1.add(label2,BorderLayout.EAST);
      panel2.add(button1);
      panel2.add(button2);
      panel2.add(button3);
      panel2.add(button4);
      Listener listener=new Listener();
      button1.addActionListener(listener);
      button2.addActionListener(listener);
      button3.addActionListener(listener);
      button4.addActionListener(listener);
      frame.add(panel1,BorderLayout.NORTH);
      frame.add(panel2,BorderLayout.SOUTH);
      frame.setBackground(Color.BLACK);
      frame.setSize(350,250);
      frame.setDefaultCloseOperation(1);
      frame.setVisible(true);
      frame.setResizable(false);
   }
   class Listener implements ActionListener// 内部类,便于调用Box类中的成员变量on_off
   {
       public void actionPerformed(ActionEvent e) {
       String s=e.getActionCommand();
       if (s.equals("B1")) {
            off =true;
       }
       if (off) {
           if (s.equals("B2")) {
                  label1.setBorder(BorderFactory.createLineBorder(Color.yellow,60));
                  label2.setBorder(BorderFactory.createLineBorder(Color.white,60));
                  label1.setOpaque(true);
                  label2.setOpaque(true);
           }
           if (s.equals("B3")) {
                  label1.setBorder(BorderFactory.createLineBorder(Color.white,60));
                  label2.setBorder(BorderFactory.createLineBorder(Color.yellow,60));
                  label1.setOpaque(true);
                  label2.setOpaque(true);
           }
           if (s.equals("B4")) {
                  label1.setBorder(BorderFactory.createLineBorder(Color.white,60));
                  label2.setBorder(BorderFactory.createLineBorder(Color.white,60));
                  label1.setOpaque(true);
                  label2.setOpaque(true);
                  off=false;
           }
       }
       else {
            label1.setBorder(BorderFactory.createLineBorder(Color.white,60));
            label2.setBorder(BorderFactory.createLineBorder(Color.white,60));
            label1.setOpaque(true);
            label2.setOpaque(true);
       }
    }
  }
}

posted @ 2016-10-31 21:02  姜顾蓉  阅读(98)  评论(0)    收藏  举报