java鼠標與鍵盤事件監聽


package cn.stat.p3.windowdemo;

import java.awt.Button;
import java.awt.FlowLayout;
import java.awt.Frame;
import java.awt.TextField;
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 shijiandemo {
    
    private Frame f;
    private TextField tf;
    private Button but;
    
    

    /**
     * @param args
     */
    public static void main(String[] args) {
        // TODO Auto-generated method stub
        new shijiandemo() ;
    }



    public shijiandemo() {
        super();
        init();
    }



    private void init() {
        f=new Frame("鼠標與鍵盤事件監聽");
        
        f.setBounds(200,200,400,400);
        
        f.setLayout(new FlowLayout());
        
        tf=new TextField(15);
        but=new Button("這是一個按鈕");
        f.add(tf);
        f.add(but);
        
        f.setVisible(true);
        myevent();
        
    }



    private void myevent() {
        
        //添加鍵盤事件
        tf.addKeyListener(new KeyAdapter() {

            @Override
            public void keyPressed(KeyEvent e) {
                // 設定只能輸入數字
                int code=e.getKeyCode();
                if(!(code>=KeyEvent.VK_0 && code<=KeyEvent.VK_9))
                {
                    System.out.println("必須是數字");
                    e.consume();
                }
                    
                
            }
        });
        
        //添加窗體事件
        f.addWindowListener(new WindowAdapter() {

            @Override
            public void windowClosing(WindowEvent e) {
                // TODO Auto-generated method stub
                System.exit(0);
            }
        });
        
        //添加鼠標事件
        but.addMouseListener(new MouseAdapter() {
            @Override
            public void mouseClicked(MouseEvent e) {
                if(e.getClickCount()==1)
                {
                    tf.setText("單擊了");
                }
                if(e.getClickCount()==2)
                {
                    tf.setText("雙擊了");
                }
            
            }

            private int count=0;

            @Override
            public void mouseEntered(MouseEvent e) {
                
                but.setLabel("鼠標觸發了"+count++);
            }
        });
        
    }

}

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM