mouseevents.java

来自「java课程的资料以及实验的代码」· Java 代码 · 共 83 行

JAVA
83
字号
import java.awt.*;
import java.awt.event.*;
import java.applet.*;
/*
  <Applet code="MouseEvents" width=300 height=100>
  </Applet>
*/

public class MouseEvents extends Applet
  implements MouseListener, MouseMotionListener {

  String msg = "";
  int mouseX = 0, mouseY = 0; // 记录鼠标位置

  public void init() {
     addMouseListener(this); //添加鼠标监听器
     addMouseMotionListener(this);  //添加鼠标移动监听器
  }

  //处理鼠标点击事件
  public void mouseClicked(MouseEvent me) {
    mouseX = 0;
    mouseY = 10;
    msg = "Mouse clicked.";
    repaint();
  }

  //处理鼠标进入事件
  public void mouseEntered(MouseEvent me) {
    mouseX = 0;
    mouseY = 10;
    msg = "Mouse entered.";
    repaint();
  }

  // 处理鼠标离开事件
  public void mouseExited(MouseEvent me) {
    mouseX = 0;
    mouseY = 10;
    msg = "Mouse exited.";
    repaint();
  }

  // 处理鼠标按钮按下事件.
  public void mousePressed(MouseEvent me) {
    //记录鼠标位置
    mouseX = me.getX();
    mouseY = me.getY();
    msg = "Down";
    repaint();
  }

  // 处理鼠标按钮松开事件
  public void mouseReleased(MouseEvent me) {
    // 记录鼠标位置
    mouseX = me.getX();
    mouseY = me.getY();
    msg = "Up";
    repaint();
  }

  // 处理鼠标拖动事件
  public void mouseDragged(MouseEvent me) {
    //记录鼠标拖动的位置
    mouseX = me.getX();
    mouseY = me.getY();
    msg = "*";
    showStatus("Dragging mouse at " + mouseX + ", " + mouseY);
    repaint();
  }

  // 处理鼠标的移动事件
  public void mouseMoved(MouseEvent me) {
    // 记录鼠标移动的位置
    showStatus("Moving mouse at " + me.getX() + ", " + me.getY());
  }

  //显示各个事件中的记录的消息
  public void paint(Graphics g) {
    g.drawString(msg, mouseX, mouseY);
  }    
}

⌨️ 快捷键说明

复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?