当前位置 博文首页 > AiY..的博客:事件监听

    AiY..的博客:事件监听

    作者:[db:作者] 时间:2021-07-14 21:33

    事件监听:当某个事件发生的时候,运行程序在干什么。如:点击按钮,输出hello;通过上下左右键控制方向

    如:按下按钮,输出框输出hello

    package 狂神说__Listener;
    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();
            MyActionListener myActeionListener=new MyActionListener();
            button.addActionListener(myActeionListener);//需要一个接口
            frame.add(button,BorderLayout.CENTER);
            frame.setBackground(Color.blue);
            frame.setBounds(200,200,600,400);
            frame.setVisible(true);
            windowsClose(frame);
        }
        //关闭窗口
        private static void windowsClose(Frame frame){
            frame.addWindowListener(new WindowAdapter() {
                @Override
                public void windowClosing(WindowEvent e) {
                    System.exit(0);
                }
            });
        }
    }
    class MyActionListener implements ActionListener{
    
        @Override
        public void actionPerformed(ActionEvent actionEvent) {
            System.out.println("hello word!");
        }
    }
    
    

    如:输入框的文字被监听,在输入框中输入文字,按下Enter键就会在输入区内输出文本框内容

    package 狂神说__Listener;
    
    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 TestAction {
        public static void main(String[] args) {
            Myframe myframe = new Myframe();
            windowsClose(myframe);
        }
        private static void windowsClose(Myframe frame){
            frame.addWindowListener(new WindowAdapter() {
                @Override
                public void windowClosing(WindowEvent e) {
                    System.exit(0);
                }
            });
    }
    static class Myframe extends Frame{
        public Myframe(){
            TextField textField = new TextField();
            this.add(textField);
            //监听文本框输入的汉字
            MyActionListener1 myActionListener1 = new MyActionListener1();
            //按下enter,就会触发输入框事件
            textField.addActionListener(myActionListener1);
    
            setVisible(true);
            setBounds(300,300,200,200);
        }
    
        }
    }
    
    class MyActionListener1 implements ActionListener{
    
        @Override
        public void actionPerformed(ActionEvent actionEvent) {
            //获得资源,返回对象
            TextField field=(TextField)actionEvent.getSource();
            System.out.println(field.getText());
            field.setText("");//Enter键触发后,文本框的内容会被清空
        }
    }
    
    

    在这里插入图片描述

    cs
    下一篇:没有了