java 事件监听 - 鼠标

//事件监听
//鼠标事件监听
//鼠标事件监听有两个实现接口
//1、MouseListener 普通的鼠标操作
//2、MouseMotionListener 鼠标的拖拽、移动
import java.awt.*;
import javax.swing.*;
import java.awt.event.*; public class Index extends JFrame{ //设置面板
Wdmb wdmb = new Wdmb(); public static void main(String[] args) throws Exception{
//实例化当前类
Index index = new Index(); } //自动执行
public Index(){ this.add(wdmb); //添加鼠标监听事件
this.addMouseListener(wdmb); //添加鼠标拖拽事件
this.addMouseMotionListener(wdmb); this.setSize(500,500);
this.setLocation(300,200);
this.setTitle("绘图");
this.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
this.setVisible(true);
} } //面板方法
//MouseListener 鼠标监听
//MouseMotionListener 鼠标拖拽监听
class Wdmb extends JPanel implements MouseListener,MouseMotionListener{ //方法覆盖
//JPanel自带方法,下面格式是固定的
//paint 会在三种情况下自动被调用
//1、启动程序 2、窗口大小发生变化时 3、运行repaint函数时
public void paint(Graphics g){
//覆盖父类的方法
super.paint(g); } /**
* 鼠标事件
*/ //鼠标单击
public void mouseClicked(MouseEvent e){
System.out.println("鼠标点击的位置是:");
System.out.println("X坐标:"+e.getX());
System.out.println("X坐标:"+e.getY());
} //鼠标按下
public void mousePressed(MouseEvent e){
//System.out.println("鼠标被按下");
} //鼠标松开
public void mouseReleased(MouseEvent e){
//System.out.println("鼠标被松开");
} //鼠标移动到界面中
public void mouseEntered(MouseEvent e){
//System.out.println("鼠标移动到界面中");
} //鼠标从界面离开
public void mouseExited(MouseEvent e){
//System.out.println("鼠标从界面离开");
} /**
* 鼠标拖拽事件
*
*/ //鼠标拖拽
public void mouseDragged(MouseEvent e){
System.out.println("鼠标点击的位置是:");
System.out.println("X坐标:"+e.getX());
System.out.println("X坐标:"+e.getY());
} //鼠标移动
public void mouseMoved(MouseEvent e){
System.out.println("鼠标点击的位置是:");
System.out.println("X坐标:"+e.getX());
System.out.println("X坐标:"+e.getY());
} }

java 事件监听 - 鼠标的更多相关文章

  1. JAVA事件监听机制的实现

    今天学习了java的事件编程机制,略有体会,先在此记下心得. 第一,首先明确几个概念. 事件源:一个产生或者触发事件的对象.事件:承载事件源状态改变时的信息对象.事件监听器接口:实际上就是一个类,该类 ...

  2. java 事件监听 - 键盘

    java 事件监听 - 键盘 //事件监听 //键盘事件监听,写了一个小案例,按上下左右,改变圆形的位置,圆形可以移动 import java.awt.*; import javax.swing.*; ...

  3. java 事件监听 - 控件

    java 事件监听 //事件监听 //事件监听,写了一个小案例,点击按钮改变面板的颜色. import java.awt.*; import javax.swing.*; import java.aw ...

  4. java事件监听机制

    1.简单的事件监听 package demo2; /* * java事件监听机制 */ import java.awt.*; import javax.swing.*; import java.awt ...

  5. Java事件监听的四种实现方式

    1.事件对象: 一般继承自java.util.EventObject对象,由开发者自行定义. 2.事件源: 就是触发事件的源头,不同的事件源会触发不同的事件类型. 3.事件监听器: 事件监听器负责监听 ...

  6. java事件监听机制2

    今天早上的两点收获: 1.addActionListener(其中的setActionCommand函数就是要对对象进行唯一性的标记,便于消息传来后进行处理.理论上actionlistener可以全部 ...

  7. Java事件监听机制与观察者设计模式

    一. Java事件监听机制 1. 事件监听三要素: 事件源,事件对象,事件监听器 2. 三要素之间的关系:事件源注册事件监听器后,当事件源上发生某个动作时,事件源就会调用事件监听的一个方法,并将事件对 ...

  8. JAVA事件监听机制与实现

    事件监听机制的实现:参考图:事件模型_ActionEvent 为了节省资源,系统无法对某个事件进行实时的监听.故实现的机制是当发生某个事件后,处理代码将被自动运行,类似钩子一般.(回调函数) 事件有许 ...

  9. java 事件监听机制组成

    事件源(组件) 事件(Event) 监听器(Listener) 事件处理(引发事件后处理方式) 事件监听机制流程图 务必记牢: 确定事件源(容器或组件) 通过事件源对象的addXXXListener( ...

随机推荐

  1. ubuntu 安装Django MySQL

    1.安装步骤 我到公司的第一件事就是安装ubuntu系统,虽然我以前没有接触过ubuntu系统不过在网上找了一下资料感觉和安装其它系统也差不多(注:我是安装带图形界面的那个版本),还是比较轻松的搞定了 ...

  2. PAT (Advanced Level) Practise:1002. A+B for Polynomials

    [题目链接] This time, you are supposed to find A+B where A and B are two polynomials. Input Each input f ...

  3. 特殊字符转义&时间格式化&获取URL参数

    /*特殊字符转义*/ function htmlspecialchars (str) { var str = str.toString().replace(/&/g, "&& ...

  4. HDU 1285 确定比赛排名 (数组实现 )

    题目链接:http://acm.hdu.edu.cn/showproblem.php?pid=1285 确定比赛名次 Time Limit: 2000/1000 MS (Java/Others)    ...

  5. 博客开篇:随笔《从windows到linux的转变》。

    在QQ群里讨论到了WINDOWS和LINUX.MAC,用手机码了如下回复,索性转过来当做博客的开篇.:) unix 和linux 在外很火的主要原因是开源,国外崇尚自由的精神是从出生就在细胞里的,而w ...

  6. windows server 2012 FTP SMB 文件夹权限继承

    被坑了..win默认的权限继承,有继承就没有smb目录继承,有smb目录继承 父级文件夹的权限就删不掉.. 换ftp轻松愉快...

  7. 原生js事件委托

    var commontop = document.getElementById("commontop");commontop.onclick = function(ev){   v ...

  8. 触发器事件trigger

    修改mysql结束符   delimiter name 触发器语法:     create trigger 触发器名称       after/before  触发时间     //错误  ERROR ...

  9. SQL语句order by两个字段同时排序

    ORDER BY  后可加2个字段,用英文逗号隔开. f1用升序, f2降序,sql该这样写 ORDER BY  f1, f2  DESC 也可以这样写,更清楚: ORDER BY  f1 ASC, ...

  10. CentOS 6、7下pptp vpn一键安装脚本

    之前有折腾过<CentOS 6.7下IPSEC/L2TP VPN一键安装脚本>,不稳定.不支持IOS,因此换成pptp,并已经添加到<lnmp一键安装包>.这个脚本可以单独使用 ...