Java练习使用ActionListener

实验目的与要求:
1.理解事件处理的过程及掌握它们的用法。

2.理解并能设置具体程序中的事件源、监听器类和事件处理器(事件处理方法)并掌握它们的应用。

3.掌握ActionListener的用法

实验条件:

1、分析并确定事件源、监听器类。

2、监听器类实现ActionListener接口,找到相应的事件处理方法actionPerformed(ActionEventarg0)。

3、事件源的注册监听实验内容与操作:

import java.awt.*;
import javax.swing.*;
import java.awt.event.*;
public class Demo2 extends JFrame implements ActionListener{JPanel jp1,jp2,jp3,jp4,jp5,jp6;Personp;
JButton jb1,jb2,jb3,jb4;Demo2(){p=new Person();jp1=new JPanel();jp2=new JPanel();jp3=new JPanel();jp4=new JPanel();jp5=new JPanel();jp6=new JPanel();

jb1=new JButton("黑色");jb2=new JButton("红色");jb3=new JButton("蓝色");jb4=new JButton("黄色");

jb1.addActionListener(this);jb1=addActionListener(p);

jb2.addActionListener(this);jb2.addActionListener(p);

jb3.addActionListener(this);jb4.addActionListener(this);

jb1.setActionCommand("a");jb2.setActionCommand("b");jb3.setActionCommand("c");
jb4.setActionCommand("d");

jp1.add(jp2);jp1.add(jp3);jp1.add(jp4);jp1.add(jp5);

jp1.setLayout(new GridLayout(1,4,10,10));

jp6.add(jb1);jp6.add(jb2);jp6.add(jb3);jp6.add(jb4);
this.add(jp1);this.add(jp6,BorderLayout.SOUTH);
this.setTitle("颜色");this.setSize(500,200);

this.setVisible(true);this.setLocation(250,150);
this.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
}

public static void main(String[] args){//TODOAuto-generatedmethodstub
    Demo2d=newDemo2();
}

public void actionPerformed(ActionEvent arg0){{
    if(arg0.getActionCommand().equals("a"))jp2.setBackground(Color.black);
    if(arg0.getActionCommand().equals("b"))jp3.setBackground(Color.red);
    if(arg0.getActionCommand().equals("c"))jp4.setBackground(Color.blue);
    if(arg0.getActionCommand().equals("d"))jp5.setBackground(Color.yellow);}}
class Person implements ActionListener ActionListener 接口{

public void actionPerformed(ActionEvent arg0){

TODO Auto-generated method stub
if(arg0.getActionCommand().equals("a"))

System.out.println("这个人也看见你按了黑色按钮");

if(arg0.getActionCommand().equals("b"))
System.out.println("这个人也看见你按了红色按钮");}}

实验结果:

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值