您的位置:首页 > 编程语言 > Java开发

java之事件监听(三)鼠标监听

2013-11-02 14:52 525 查看
package 第一版;
import java.awt.*;
import java.awt.event.KeyEvent;
import java.awt.event.KeyListener;
import java.awt.event.MouseEvent;
import java.awt.event.MouseListener;
import java.awt.event.MouseMotionListener;

import javax.swing.*;
public class draw5 extends JFrame{
My_Panel mp = null;
public draw5() {
// TODO Auto-generated constructor stub
mp = new My_Panel();
this.add(mp);
// 注册监听
this.addMouseListener(mp); // 监听鼠标
this.addKeyListener(mp); // 监听键盘
this.addMouseMotionListener(mp); // 监听鼠标移动

this.setSize(300, 300); // 设置框体大小
this.setLocation(400,150); //设置框体显示的位置
this.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE); // 设置框体退出
this.setVisible(true); // 显示框体
}
public static void main(String[] args) {
// TODO Auto-generated method stub
draw5 d = new draw5();
}

}

class My_Panel extends JPanel implements MouseListener,KeyListener,MouseMotionListener{
public void paint(Graphics g){
super.paint(g);
}
//鼠标点击
@Override
public void mouseClicked(MouseEvent e) {
// TODO Auto-generated method stub
System.out.println("鼠标点击");
System.out.println("鼠标位置 x = "+e.getX()+" y = "+e.getY());
System.out.println("鼠标键 = "+e.getButton() + " 点击次数 "+e.getClickCount()); // 输出1是左键,2是中键,3是右键
}
//鼠标移动到My_Panel
@Override
public void mouseEntered(MouseEvent e) {
// TODO Auto-generated method stub
//	System.out.println("鼠标移动到My_Panel");
}
//鼠标离开My_Panel
@Override
public void mouseExited(MouseEvent e) {
// TODO Auto-generated method stub
//	System.out.println("鼠标离开My_Panel");
}
//鼠标按下
@Override
public void mousePressed(MouseEvent e) {
// TODO Auto-generated method stub
//	System.out.println("鼠标按下");
}
//鼠标松开
@Override
public void mouseReleased(MouseEvent e) {
// TODO Auto-generated method stub
//	System.out.println("鼠标松开");
}
//键按下
@Override
public void keyPressed(KeyEvent e) {
// TODO Auto-generated method stub
System.out.println("键  = "+e.getKeyChar());

}
//键松开
@Override
public void keyReleased(KeyEvent e) {
// TODO Auto-generated method stub

}
//键输入
@Override
public void keyTyped(KeyEvent e) {
// TODO Auto-generated method stub

}
//鼠标按键在组件上按下并拖动时调用
@Override
public void mouseDragged(MouseEvent e) {
// TODO Auto-generated method stub
//	System.out.println("鼠标按键在组件上按下并拖动时调用");
}
//鼠标光标移动到组件上但无按键按下时调用
@Override
public void mouseMoved(MouseEvent e) {
// TODO Auto-generated method stub
//	System.out.println("鼠标光标移动到组件上但无按键按下时调用");
}
}
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: