java鼠标事件,java鼠标事件处理原理

本文目录一览:

java鼠标双击事件怎么实现

java鼠标双击事件的实现方法

鼠标的单双击事件在很多时候对我们帮助很大,但是在JAVA中却没有给出鼠标双击事件.我们可以通过事件源e.getClickCount()==2来判断鼠标点击次数来实现鼠标双击事件,例如:

public class MyMouseListener

extends java.awt.event.MouseAdapter …{

public void mouseClicked(MouseEvent e) …{

System.out.println(“clicked”);

int clickTimes = e.getClickCount();

if (clickTimes == 2) …{

System.out.println(“Doublc Clicked!”);

}

}

}

java鼠标点击事件怎么做?

java鼠标点击事件的方法如下:

span style=”font-family:Verdana;”事件源/span.addMouseListener(new MouseAdapter() {//建立事件处理机制  

   @Override  

   public void mouseClicked(MouseEvent e) {  

       if(e.getButton()==e.BUTTON1){//点击鼠标左键  

           int x=e.getX();  

           int y=e.getY();  

           String str=”您点击的是左键,鼠标当前点击位置的坐标是(” + x + “,” + y+”)”;  

           label.setText(str);  

       }else if(e.getButton()==e.BUTTON2){//点击鼠标滑轮  

           int x=e.getX();  

           int y=e.getY();  

           String str=”您点击的是滑轮,鼠标当前点击位置的坐标是(” + x + “,” + y+”)”;  

           label.setText(str);   

       }  

       else if(e.getButton()==e.BUTTON3){//点击鼠标右键  

           int x=e.getX();  

           int y=e.getY();  

           String str=”您点击的是右键,鼠标当前点击位置的坐标是(” + x + “,” + y+”)”;  

           label.setText(str);       

       }  

   }  

});

e.getButton()返回值分别为NOBUTTON、BUTTON1、BUTTON2、BUTTON3,分别代表着无点击、左击、中间键、右击三种情况。

给Java初学者的建议:

1,不一定要把java学深入。有多少人搞程序是喜欢这个的,搞程序一半是因为钱多,一半是因为晋升公平。

2,初学者学java至少要脱产半年的时间才能算了解了,才适合被人带,因为至少半年的时间,才知道遇到问题如何解决,有的人需要更长的时间。现在有很多人已经有5年左右的经验了,在他们的压制下,java初学者很难有逆袭的机会了。

3,行业环境,现在数据存储,后台打包的方案的创业公司已经有苗头,也就是说,后台开发已经被集中解决,日后会越来越成熟,这就是意味着,java招聘需要有经验的人,也就是说,必须熬几年后才能有突破。

4,java离市场较远,所以呢?java开发人员很难有一个大的突破。

5,程序里面有变量所以解决了一系列类似的问题,所以注定了程序必须提供大批服务时才能有高收益。

用java写一个单击鼠标事件

使用组件的paint函数用于绘图, 使用MouseListener来响应鼠标的点击

效果图

代码

import java.awt.Color;

import java.awt.Graphics;

import java.awt.event.*;

import javax.swing.*;

public class DemoWin extends JFrame {

public DemoWin() {

MyPanel mp = new MyPanel();

mp.addMouseListener(mp);

add(mp);

// 窗口属性设置

setTitle(“Demo”);// 标题

setSize(300, 280);// 窗口大小

setLocationRelativeTo(null);// 窗口居中

setDefaultCloseOperation(EXIT_ON_CLOSE);// 窗口点击关闭时,退出程序

}

public static void main(String[] args) {

DemoWin win = new DemoWin(); // 创建窗口

win.setVisible(true);// 显示窗口

}

class MyPanel extends JPanel implements MouseListener {

int times;// 记录点击的次数

int x;// 记录鼠标X轴的位置

int y;// 记录鼠标Y轴的位置

@Override

public void paint(Graphics g) {

super.paint(g);

if (times == 0) {

g.setColor(Color.BLUE);// 颜色

g.fillOval(150, 150, 50, 50);// 150,150代表位置 50,50代表宽高

} else if (times == 1) {

g.setColor(Color.RED);

g.fillRect(150, 150, 50, 50);

} else {

g.setColor(Color.RED);

g.fillRect(x, y, 50, 50);

}

repaint();

}

public void mouseClicked(MouseEvent e) {

// if (e.getButton()==MouseEvent.BUTTON1) {//单击左键时有效..

// times++;// 记录点击的次数

// x = e.getX();

// y = e.getY();

// }

}

public void mousePressed(MouseEvent e) {// 鼠标按下就有效

times++;// 记录点击的次数

x = e.getX();

y = e.getY();

}

public void mouseReleased(MouseEvent e) {// 鼠标释放

}

public void mouseEntered(MouseEvent e) {// 鼠标移入

}

public void mouseExited(MouseEvent e) {// 鼠标移出

}

}

}

Java 程序实现鼠标点击 键盘等事件

这个用MouseListener里的mouseEntered(MouseEvent

e)方法。

鼠标进入区域就产生事件反应。

如果之前申明了点击事件可以在entered时间里呼叫clicked事件。

JAVA鼠标双击事件

ava 没有直接获取鼠标双击事件的方法,因此我们可以在用户每发生单击事件时延时执行,

当时间在这段时间内用户又一次发生了单击事件,那么就直接执行双击事件,取消上次的单击事件

package com.aowin.stuff.Lisnter;

import java.awt.event.MouseAdapter;

import java.awt.event.MouseEvent;

import java.util.Date;

import java.util.Timer;

import java.util.TimerTask;

public class MyMouseListener extends MouseAdapter {

private static boolean flag = false;

// 用来判断是否已经执行双击事件

private static int clickNum = 0;

// 用来判断是否该执行双击事件

@Override

public void mouseClicked(MouseEvent e) {

// final MouseEvent me = e;

MyMouseListener.flag = false;

System.out.println(clickNum);

if (MyMouseListener.clickNum == 1) {// 1时执行双击事件

System.out.println(“执行双击事件”);

MyMouseListener.clickNum = 0;

MyMouseListener.flag = true;

return;

}

// 定义定时器

Timer timer = new Timer();

// 定时器开始执行,延时0.2秒后确定是否执行单击事件

timer.schedule(new TimerTask() {

private int n = 0;

// 记录定时器执行次数

@Override

public void run() {

if (MyMouseListener.flag) {

MyMouseListener.clickNum = 0;

this.cancel();

return;

}

if (n == 1) {

System.out.println(“执行单击事件”);

MyMouseListener.flag = true;

MyMouseListener.clickNum = 0;

n = 0;

this.cancel();

return;

}

clickNum++;

n++;

System.out.println(“第” + n);

System.out.println(clickNum);

}

}, new Date(), 200);

//上边的意思是,单击第一次会运行一次run方法clickNum 会加1,然后0.2秒后再执行Run方法 //如果在这0.2秒中间用户又单击了事件,那就会运行开头的双击事件

}

}

原创文章,作者:小蓝,如若转载,请注明出处:https://www.506064.com/n/280475.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
小蓝小蓝
上一篇 2024-12-21 13:03
下一篇 2024-12-21 13:04

相关推荐

  • Java JsonPath 效率优化指南

    本篇文章将深入探讨Java JsonPath的效率问题,并提供一些优化方案。 一、JsonPath 简介 JsonPath是一个可用于从JSON数据中获取信息的库。它提供了一种DS…

    编程 2025-04-29
  • java client.getacsresponse 编译报错解决方法

    java client.getacsresponse 编译报错是Java编程过程中常见的错误,常见的原因是代码的语法错误、类库依赖问题和编译环境的配置问题。下面将从多个方面进行分析…

    编程 2025-04-29
  • Java腾讯云音视频对接

    本文旨在从多个方面详细阐述Java腾讯云音视频对接,提供完整的代码示例。 一、腾讯云音视频介绍 腾讯云音视频服务(Cloud Tencent Real-Time Communica…

    编程 2025-04-29
  • Java Bean加载过程

    Java Bean加载过程涉及到类加载器、反射机制和Java虚拟机的执行过程。在本文中,将从这三个方面详细阐述Java Bean加载的过程。 一、类加载器 类加载器是Java虚拟机…

    编程 2025-04-29
  • Java Milvus SearchParam withoutFields用法介绍

    本文将详细介绍Java Milvus SearchParam withoutFields的相关知识和用法。 一、什么是Java Milvus SearchParam without…

    编程 2025-04-29
  • Java 8中某一周的周一

    Java 8是Java语言中的一个版本,于2014年3月18日发布。本文将从多个方面对Java 8中某一周的周一进行详细的阐述。 一、数组处理 Java 8新特性之一是Stream…

    编程 2025-04-29
  • Java判断字符串是否存在多个

    本文将从以下几个方面详细阐述如何使用Java判断一个字符串中是否存在多个指定字符: 一、字符串遍历 字符串是Java编程中非常重要的一种数据类型。要判断字符串中是否存在多个指定字符…

    编程 2025-04-29
  • VSCode为什么无法运行Java

    解答:VSCode无法运行Java是因为默认情况下,VSCode并没有集成Java运行环境,需要手动添加Java运行环境或安装相关插件才能实现Java代码的编写、调试和运行。 一、…

    编程 2025-04-29
  • Java任务下发回滚系统的设计与实现

    本文将介绍一个Java任务下发回滚系统的设计与实现。该系统可以用于执行复杂的任务,包括可回滚的任务,及时恢复任务失败前的状态。系统使用Java语言进行开发,可以支持多种类型的任务。…

    编程 2025-04-29
  • Harris角点检测算法原理与实现

    本文将从多个方面对Harris角点检测算法进行详细的阐述,包括算法原理、实现步骤、代码实现等。 一、Harris角点检测算法原理 Harris角点检测算法是一种经典的计算机视觉算法…

    编程 2025-04-29

发表回复

登录后才能评论