Java_基础—GUI(窗体/鼠标/键盘/动作监听和键盘事件)
程序员文章站
2024-03-24 16:01:34
...
一、窗体监听
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);
}
});