美文网首页
GUI---监听

GUI---监听

作者: 李霖神谷 | 来源:发表于2017-03-02 14:34 被阅读15次

事件处理机制分为三个重要概念:

事件:用户对组件的一个操作称之为一个事件。
事件源:发生事件的组件称之为事件源。
事件处理器:java类中负责处理事件的一个方法,也称之为监听器。
当然,这三个概念很简单,事件源发生事件时将事件传给监听器,监听器根据不同的事件给出不同的处理方案。

窗口监听:

WindowAdapter是一个接口,此接口有监听事件的各种方法。当你想调用该接口中的某一方法时,就使用WindowAdapter适配器

import java.awt.Frame;
import java.awt.event.WindowAdapter;
import java.awt.event.WindowEvent;

public class GuiDemo {
   public static void main(String[] args) {
       // TODO Auto-generated method stub
       // 创建窗体
       Frame f = new Frame();

       f.setVisible(true);
       // 设置窗体
       f.setSize(300, 500);
       // 创建窗口监听器
       f.addWindowListener(new WindowAdapter() {

           @Override
           // 使用关闭窗口时的方法。
           public void windowClosing(WindowEvent arg0) {
               System.out.println("aaa");
               // 关闭窗口
               f.dispose();
           }

       });
   }

}

鼠标监听:


import java.awt.Button;
import java.awt.Frame;
import java.awt.event.MouseAdapter;
import java.awt.event.MouseEvent;

public class GuiDemo {
    public static void main(String[] args) {
        // TODO Auto-generated method stub
        // 创建窗体
        Frame f = new Frame();

        f.setVisible(true);
        // 设置窗体
        f.setSize(300, 500);
        Button bu = new Button("oiasbdfug");
        // 给鼠标上添加监听器
        bu.addMouseListener(new MouseAdapter() {

            @Override
            public void mouseClicked(MouseEvent arg0) {
                System.out.println("鼠标单击了");
            }

            @Override
            public void mouseEntered(MouseEvent arg0) {
                // TODO Auto-generated method stub
                System.out.println("鼠标进入了");
            }

            @Override
            public void mouseExited(MouseEvent arg0) {
                // TODO Auto-generated method stub
                System.out.println("鼠标移动了");
            }

        });
        f.add(bu);
    }

}

鼠标监听:


import java.awt.Frame;
import java.awt.TextField;
import java.awt.event.KeyEvent;
import java.awt.event.KeyListener;

public class GuiDemo {
    public static void main(String[] args) {
        // TODO Auto-generated method stub
        // 创建窗体
        Frame f = new Frame();

        f.setVisible(true);
        // 设置窗体
        f.setSize(300, 500);
        TextField tx = new TextField(300);
        // 给文本框上添加键盘监听
        tx.addKeyListener(new KeyListener() {

            @Override
            public void keyPressed(KeyEvent e) {
                // TODO Auto-generated method stub
                char ch = e.getKeyChar();
                int i = e.getKeyCode();
                String s = e.getKeyText(i);
                System.out.println(ch + "" + i + "" + s);
            }

            @Override
            public void keyReleased(KeyEvent arg0) {
                // TODO Auto-generated method stub

            }

            @Override
            public void keyTyped(KeyEvent arg0) {
                // TODO Auto-generated method stub

            }

        });
    }

}

相关文章

网友评论

      本文标题:GUI---监听

      本文链接:https://www.haomeiwen.com/subject/vephgttx.html