mouse_event

简介

所有组件都能发出鼠标事件,MouseEvent类负责捕获鼠标事件,可以通过为组件添加实现了MouseListener接口的监听器类来处理相应的鼠标事件。

MouseListener接口共有5个抽象方法,分别在光标移入或移出组件时、鼠标按键被按下或释放时和发生单击事件时被触发。所谓单击事件,就是按键被按下并释放。

注意:如果按键是在移出组件之后才被释放,则不会触发单击事件。

当双击鼠标时,第一次单击单击鼠标将触发第一次单击事件。(也就是先会输出第一次,在输出第二次)

public interface MouseListener extends EventListener{

public void mouseReleased(MouseEvent e);//鼠标按键被释放是被触发

public void mousePressed(MouseEvent e);//鼠标按键被按下时被触发

public void mouseExited(MouseEvent e);//光标移除组件时被触发

public void mouseEntered(MouseEvent e);//光标移入组件时被触发

public void mouseClicked(MouseEvent e);//发生单击事件时被触发

}

常用方法

当需要判断触发此次事件的按键时,可以通过静态常量判断由 getButton() 方法返回的 int 型值代表的键:

import java.util.*;

import java.awt.*;

import java.awt.event.*;

import java.io.*;

import javax.swing.*;

public class t3 extends JFrame{

private static final long serialversionuid = 1L;

public t3() {

settitle("Hern");

setBounds(400, 400, 400, 400);

setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);

final JLabel label = new JLabel();

label.setText("请用鼠标点击");

label.addMouseListener(new MouseListener() {

@Override

public void mouseReleased(MouseEvent e) {//鼠标按键被释放时被触发

// TODO Auto-generated method stub

System.out.println("鼠标按键被释放,");

int i = e.getButton(); //通过该值可以判断释放的是哪个键

if (i == MouseEvent.BUTTON1) {

System.out.print("释放了鼠标左键");

}else if(i == MouseEvent.BUTTON2) {

System.out.println("释放了鼠标滚轮");

}else if(i == MouseEvent.BUTTON3){

System.out.println("释放了鼠标右键");

}

}

@Override

public void mousePressed(MouseEvent e) {//鼠标按键被按下时被触发

// TODO Auto-generated method stub

System.out.print("鼠标按键被按下,");

int i = e.getButton(); // 通过该值可以判断按下的是哪个键

if(i == MouseEvent.BUTTON1) {

System.out.print("按下了鼠标左键");

}else if(i == MouseEvent.BUTTON2) {

System.out.print("按下了鼠标滚轮");

}else if(i == MouseEvent.BUTTON3) {

System.out.print("按下了鼠标右键");

}

}

@Override

public void mouseExited(MouseEvent e) {//光标移出组件时被触发

// TODO Auto-generated method stub

System.out.println("光标移除组件");

}

@Override

public void mouseEntered(MouseEvent e) {//光标移入组件时被触发

// TODO Auto-generated method stub

System.out.println("光标移入组件");

}

@Override

public void mouseClicked(MouseEvent e) {//发生单击事件时被触发

// TODO Auto-generated method stub

System.out.print("单击了鼠标按键,");

int i = e.getButton(); // 通过该值可以判断单击的是哪个键

if (i == MouseEvent.BUTTON1) {

System.out.print("单击的是鼠标左键,");

}else if (i == MouseEvent.BUTTON2) {

System.out.print("单击的是鼠标滚轮,");

}else if (i == MouseEvent.BUTTON3) {

System.out.print("单击的是鼠标右键,");

}

int clickCount = e.getClickCount();//获取单击按键的次数

System.out.println("单击次数为" + clickCount + "下");

}

});

add(label);

setVisible(true);

}

public static void main(String[] args) {

// TODO Auto-generated method stub

t3 test = new t3();

}

}

相关阅读

此周是做项目做一个java的养成类的小游戏我是用控制台写的小游戏建了很多的UI地图,部分代码,然后让我们来看实现的样子:好啦,部分内容

file的这几个取得path的方法各有不同,下边说说详细的区别概念上的区别:(内容来自jdk,个人感觉这个描述信息,只能让明白的人明白,不明白

1.DOM方式解析XMLDom解析是将xml文件全部载入到内存,组装成一颗dom树,然后通过节点以及节点之间的关系来解析xml文件,与平台无关,ja

今天整理了下面试中会经常出现的一些问题。

1.线程的几种状态和相互的转换?

回答要点:

1)线程有5中状态,分别是: 创建 就绪 运行 阻塞

微信公众号:一个优秀的废人如有问题或建议,请后台留言,我会尽力解决你的问题。

简介

本书一共包含 90 个条目,每个条目讨论 Java 程序

java mouseevent_「mouse_event」Java MouseEvent类(鼠标事件) - seo实验室相关推荐

  1. Java MouseEvent类鼠标事件详解

    简介 所有组件都能发出鼠标事件,MouseEvent类负责捕获鼠标事件,可以通过为组件添加实现了MouseListener接口的监听器类来处理相应的鼠标事件. MouseListener接口共有5个抽 ...

  2. java expected_「expected」JAVA常见错误之 expected - seo实验室

    expected 例1:public class line1{ int test1=666; line2 l2=new line2(); l2.ShowIt(test1); } 例2:public c ...

  3. 利用python画分形图_「分形」python简单的分形图片 - seo实验室

    分形 康托集 # 康托集 import pygame pygame.init() screen = pygame.display.set_caption('康托集') screen = pygame. ...

  4. cookiejar包_「cookiejar」http.cookiejar库之CookieJar - seo实验室

    cookiejar cookiejar和HTTPCookieProcessor 我们在使用爬虫的时候,经常会用到cookie进行模拟登陆和访问.在使用urllib库做爬虫,我们需要借助http.coo ...

  5. Supplier JAVA_「supplier」java1.8之supplier理解 - seo实验室

    supplier supplier也是是用来创建对象的,但是不同于传统的创建对象语法:new,看下面代码: public class TestSupplier { private int age; T ...

  6. android seekto实现_「seekto」android MediaPlayer 的SeekTo 方法 - seo实验室

    seekto Android使用 mediaplayer 播放video视频过程中, 当用户退出当前播放,再从后台恢复播放时,需要跳转到之前退出的时间点继续播放. 使用的方法基本都是 seekto 之 ...

  7. jvm 系列(九):如何优化 Java GC 「译」

    本文由CrowHawk翻译,地址:如何优化Java GC「译」,是Java GC调优的经典佳作. Sangmin Lee发表在Cubrid上的"Become a Java GC Expert ...

  8. jvm系列(十):如何优化Java GC「译」

    本文由CrowHawk翻译,地址:如何优化Java GC「译」,是Java GC调优的经典佳作. Sangmin Lee发表在Cubrid上的"Become a Java GC Expert ...

  9. 「问题解决」java web项目打成jar包运行后工具类无法读取模板文件的解决方法

    介绍语 本号主要是Java常用关键技术点,通用工具类的分享:以及springboot+springcloud+Mybatisplus+druid+mysql+redis+swagger+maven+d ...

最新文章

  1. rabbitmq 集群搭建
  2. 【Python学习系列十九】基于scikit-learn库进行特征选择
  3. 线上服务器登记的要点
  4. Http协议(7)—Http缓存
  5. linux之类似Windows的资源管理器gnome-system-monitor(可用这个杀死进程)
  6. 定制控件消息处理函数
  7. 剑指offer面试题[42]-反转单词顺序VS左旋转字符串
  8. C++复制粘贴代码去行标
  9. 0-1背包问题-c语言实现
  10. 抖音高贵气质的签名_最新抖音气质个性签名 简短唯美幸福个性签名
  11. 服务器系统做双备份,云服务器如何做双机热备份
  12. 深入解读5G关键技术
  13. [Android]bp侧gerrit提交不上去时,删除编译生成的二进制文件
  14. “科比男孩”被美国大学录取 即将出国圆梦
  15. GoDaddy域名过户PUSH攻略
  16. HBU-NNDL 实验五 前馈神经网络(3)鸢尾花分类
  17. 简单的有限状态机Unity独家写法(呸~厚颜无耻之人)
  18. C/C++描述 LeetCode周赛 5473. 灯泡开关 IV
  19. 如何用Python爬取股市数据,并进行数据可视化
  20. 利用jieba分词分析小说二

热门文章

  1. VR虚拟现实技术在畜牧兽医教学中的应用
  2. 那些年错过的蓝桥杯(三)
  3. TLS1.2 和 TLS1.3的简要区别
  4. AI在华东金融专场 | 腾讯云核心伙伴进阶营走进上海
  5. Local Root Exploits
  6. SGL8022W单通道直流LED 灯光控制触摸芯片
  7. Spring Cloud Feign启动Load balancer does not have available server for client分析
  8. c语言设计程序时大于等于怎么表示,c语言大于等于怎么打?
  9. SpringBoot启动时将数据库数据加载到内存
  10. Mybatis从入门到精通——MGB代码生成器(12)