1. 程式人生 > >Java_基礎—GUI(窗體/滑鼠/鍵盤/動作監聽和鍵盤事件)

Java_基礎—GUI(窗體/滑鼠/鍵盤/動作監聽和鍵盤事件)

一、窗體監聽

Frame f = new Frame(“我的窗體”);
//事件源是窗體,把監聽器註冊到事件源上
//事件物件傳遞給監聽器

package com.soar.gui;

import java.awt.Button;
import java.awt.FlowLayout;
import java.awt.Frame;
import java.awt.Toolkit;
import java.awt.event.WindowAdapter;
import java.awt.event.WindowEvent;
import java.awt.event.WindowListener;

public
class Demo1_Frame { public static void main(String[] args) { Frame f = new Frame("MyQQ"); f.setSize(400,600); //設定窗體的長和寬 f.setLocation(300,50); //設定窗體的位置 f.setIconImage(Toolkit.getDefaultToolkit().createImage("qq.png")); //為該窗體設定一個Logo Button b1 = new
Button("按鈕一"); f.add(b1); f.setLayout(new FlowLayout()); //設定佈局管理器 //f.addWindowListener(new MyWindowsAdapter()); f.addWindowListener(new WindowAdapter() { @Override public void windowClosing(WindowEvent e) { System.exit(0); } }); f.setVisible(true
); //設定窗體可見 } }

這裡寫圖片描述

二、滑鼠監聽

Button b1 = new Button("按鈕一");
f.add(b1);
        b1.addMouseListener(new MouseAdapter() {
            /*@Override
             * 單擊
            public void mouseClicked(MouseEvent e) {
                System.exit(0);
            }*/
            @Override
            //釋放
            public void mouseReleased(MouseEvent e) {
                System.exit(0);
            }
        });

這裡寫圖片描述

三、鍵盤監聽和鍵盤事件

Button b1 = new Button("鍵盤敲擊空格鍵關閉視窗");
        f.add(b1);
        b1.addKeyListener(new KeyAdapter() {
            @Override
            public void keyReleased(KeyEvent e) {
                //System.out.println(e.getKeyCode());
                //System.exit(0);
                //if(e.getKeyCode() == 32){
                if(e.getKeyCode() == KeyEvent.VK_SPACE){
                    System.exit(0);
                }
            }
        });

這裡寫圖片描述

四、動作監聽

預設是單機滑鼠左鍵和敲空格觸發該事件

Button b2 = new Button("按空格和單擊滑鼠關閉視窗");
        f.add(b2);
        //新增動作監聽,應用場景就是暫停視訊和播放視訊
        b2.addActionListener(new ActionListener() {     
            @Override
            public void actionPerformed(ActionEvent e) {
                System.exit(0);
            }
        });

這裡寫圖片描述