关闭

java 监听机制

标签: java
389人阅读 评论(0) 收藏 举报
分类:
/**
 * 作者:@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("点击了红色按钮!");
		}
	}
	
}

0
0

查看评论
* 以上用户言论只代表其个人观点,不代表CSDN网站的观点或立场
    个人资料
    • 访问:165624次
    • 积分:3653
    • 等级:
    • 排名:第8879名
    • 原创:207篇
    • 转载:19篇
    • 译文:0篇
    • 评论:29条