/**
* 作者:@author ZhangShaoWen
* 日期:2013-12-05
* 功能:监听机制
*/
package com.test;
import java.awt.*;
import javax.swing.*;
import java.awt.event.*;
public class Demo1_2 extends JFrame implements ActionListener{
//定义变量
JPanel jp = null;
JButton jb1,jb2;
public static void main(String[] args) {
// TODO Auto-generated method stub
new Demo1_2();
}
//构造函数
public Demo1_2(){
//初始化变量
jp = new JPanel();
//设置面板的背景色
jp.setBackground(Color.black);
jb1 = new JButton("蓝色");
jb1.setActionCommand("a");
jb1.addActionListener(this);//注册监听
jb1.addActionListener(new Dog());//注册监听(用令外对象监听)
jb2 = new JButton("红色");
jb2.setActionCommand("b");
jb2.addActionListener(this);//注册监听
jb2.addActionListener(new Dog());//注册监听(用令外对象监听)
this.add(jb1,BorderLayout.NORTH);
this.add(jp);
this.add(jb2,BorderLayout.SOUTH);
this.setSize(200,150);
this.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
this.setVisible(true);
}
//事件处理方法
@Override
public void actionPerformed(ActionEvent e) {
// TODO Auto-generated method stub
if(e.getSource() == jb1){
//当点击蓝色按钮时
jp.setBackground(Color.blue);
}else if(e.getSource()==jb2){
//当点击红色按钮时
jp.setBackground(Color.red);
}
}
}
class Dog implements ActionListener{
//事件处理方法
@Override
public void actionPerformed(ActionEvent e) {
// TODO Auto-generated method stub
if(e.getActionCommand().equals("a")){
System.out.println("点击了蓝色按钮!");
}else if(e.getActionCommand().equals("b")){
System.out.println("点击了红色按钮!");
}
}
}
java 监听机制
最新推荐文章于 2023-08-05 20:12:15 发布