1500字范文,内容丰富有趣,写作好帮手!
1500字范文 > java mouseevent_「mouse_event」Java MouseEvent类(鼠标事件) - seo实验室

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

时间:2019-12-30 21:49:06

相关推荐

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

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 程序

本内容不代表本网观点和政治立场,如有侵犯你的权益请联系我们处理。
网友评论
网友评论仅供其表达个人看法,并不表明网站立场。