- package gui.awt;
- import java.awt.Button;
- import java.awt.FlowLayout;
- import java.awt.Frame;
- import java.awt.TextField;
- import java.awt.event.ActionEvent;
- import java.awt.event.ActionListener;
- import java.awt.event.KeyAdapter;
- import java.awt.event.KeyEvent;
- import java.awt.event.MouseAdapter;
- import java.awt.event.MouseEvent;
- import java.awt.event.WindowAdapter;
- import java.awt.event.WindowEvent;
- public class MouseListener_class {
- private Frame f;
- private Button b,bb;
- private TextField tf;
- public MouseListener_class(){
- init();
- }
- public void init(){
- f=new Frame("鼠标点击事件");
- b=new Button("点击鼠标");
- bb=new Button("键盘事件监听");
- tf=new TextField(20);
- f.add(b);
- f.add(tf);
- f.add(bb);
- f.setLayout(new FlowLayout());
- f.setBounds(200,200,400,300);
- f.setVisible(true);
- event();
- }
- public void event(){
- //对Frame面板添加WindowListener窗口监听
- f.addWindowListener(new WindowAdapter() {
- public void windowClosing(WindowEvent e){
- System.exit(0);
- }
- });
- //对按钮添加actionListener动作监听,添加动作监听后,选中控件后,可以按键盘空格继续对其操作,但如果该控件同时添加了鼠标监听,鼠标监听先运行
- b.addActionListener(new ActionListener() {
- public void actionPerformed(ActionEvent e) {
- System.out.println("动作监听");
- }
- });
- b.addMouseListener(new MouseAdapter() {
- public void mouseClicked(MouseEvent e){
- System.out.println("鼠标单击监听");
- }
- public void mousePressed(MouseEvent e){
- System.out.println("鼠标摁下");
- }
- public void mouseReleased(MouseEvent e){
- System.out.println("鼠标抬起");
- }
- });
- //键盘监听事件
- bb.addKeyListener(new KeyAdapter() {
- public void keyReleased(KeyEvent e){
- if(e.isControlDown() && (e.getKeyCode()==KeyEvent.VK_ENTER)){//判断摁下组合键,然后再对其操作
- System.out.println("运用组合键crtl+enter");
- }else if(e.getKeyCode()==KeyEvent.VK_ENTER){//判断摁下的是那个键,然后再对其针对性操作
- System.out.println("按下的键为:回车键");
- }else{
- System.out.println(e.getKeyText(e.getKeyCode())+",,,,"+e.getKeyChar()+",,,,,"+e.getKeyCode());
- //获取键盘所摁下的键的名称 获取键的字符 获取键的ASCII码
- }
- }
- });
- tf.addKeyListener(new KeyAdapter() {
- public void keyPressed(KeyEvent e){
- if(!(e.getKeyCode()>=KeyEvent.VK_0&&e.getKeyCode()<=KeyEvent.VK_9)){
- System.out.println("数字yes:"+e.getKeyCode());
- e.consume();//屏蔽键,不会把非法值输入到textfield中
- }
- //System.out.println(e.getKeyChar());
- }
- });
- }
- public static void main(String[] args) {
- new MouseListener_class();
- }
- }