Java图像化——事件监听

当按东西时候,能反应应该做什么

package lesson2;

import java.awt.*;
import java.awt.event.ActionEvent;
import java.awt.event.ActionListener;
import java.awt.event.WindowAdapter;
import java.awt.event.WindowEvent;

public class TestActionEvent {
    public static void main(String[] args) {
        //按下按钮,触发一些事件
        Frame frame=new Frame();
        Button button=new Button();

        //因为,addActionListener()需要一个
        //ActionListener,所以我们要构造一个ActionListener
        MyActionListener myActionListener=new MyActionListener();


        //与按钮联系,button.addActionListener()
        button.addActionListener(myActionListener);

        frame.add(button,BorderLayout.CENTER);
        frame.pack();
        frame.setVisible(true);

        //窗口关闭
        windowclose(frame);



    }
    //关闭窗口事件
    private static void windowclose(Frame frame)
    {
        frame.addWindowListener(new WindowAdapter() {
            @Override
            public void windowClosing(WindowEvent e) {
                System.exit(0);
            }
        });

    }
}

//事件监听
class  MyActionListener implements ActionListener{
    @Override
    public void actionPerformed(ActionEvent e) {
        System.out.println("ok");
    }
}

在这里插入图片描述
二个按钮实现 同一个监听
//开始 停止

package lesson2;

import java.awt.*;
import java.awt.event.ActionEvent;
import java.awt.event.ActionListener;
import java.awt.event.WindowAdapter;
import java.awt.event.WindowEvent;

public class TestActionEvent2 {
    public static void main(String[] args) {
        //二个按钮,实现同一个监听
        //开始   停止
        Frame frame = new Frame("开始 停止");
        Button button1 = new Button("start");
        Button button2 = new Button("stop");



        //给actiincommand东西
        //可以显示的定义触发会返回的命令
        //可以多个按钮一个监听
        button2.setActionCommand("button2-stop");

        MyMonitor myMonitor = new MyMonitor();

//与按钮联系,button.addActionListener()
        button1.addActionListener(myMonitor);
        button2.addActionListener(myMonitor);

        frame.add(button1,BorderLayout.NORTH);
        frame.add(button2,BorderLayout.SOUTH);

        frame.pack();
        frame.setVisible(true);
        windowclose(frame);

    }
    //关闭窗口事件
    private static void windowclose(Frame frame)
    {
        frame.addWindowListener(new WindowAdapter() {
            @Override
            public void windowClosing(WindowEvent e) {
                System.exit(0);
            }
        });

    }

}


class MyMonitor implements ActionListener{
    @Override
    public void actionPerformed(ActionEvent e) {
        //e.getActionCommand()可以获取按钮的信息
        System.out.println("按钮被点击了:msg=>"+e.getActionCommand()) ;



    }
}

在这里插入图片描述

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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值