trymousemotion.java

来自「Java 入门书的源码」· Java 代码 · 共 56 行

JAVA
56
字号
//Copyright (c) 1998, Arthur Gittleman
//This example is provided WITHOUT ANY WARRANTY either expressed or implied.

/*  Drags a triangle to a new location
 *  using the position of the mouse to
 *  determine how to move the polygon.
 */

import java.awt.*;
import java.awt.event.*;
import java.applet.Applet;

public class TryMouseMotion extends Applet
         implements MouseListener, MouseMotionListener {
  private int [] x = {50,100,150};
  private int [] y = {100,50,100};
  private Polygon p = new Polygon(x,y,3);
  private int oldx;
  private int oldy;
 
  public void init() {
    addMouseListener(this);
    addMouseMotionListener(this);
  }
  public void paint(Graphics g) {
   g.fillPolygon(p);
  }
  public void mousePressed(MouseEvent event) {
    int x = event.getX();
    int y = event.getY(); 
    if (p.contains(x,y)){
      oldx = x;
      oldy = y;
    }
  }
  public void mouseReleased(MouseEvent event) {  }
  public void mouseClicked(MouseEvent event) {  }
  public void mouseEntered(MouseEvent event) {  }
  public void mouseExited(MouseEvent event) {  }
  public void mouseMoved(MouseEvent event) { }
  public void mouseDragged(MouseEvent event) {
    int x = event.getX();
    int y = event.getY(); 
    if (p.contains(x,y)){
      p.translate(x-oldx,y-oldy);
      oldx=x;
      oldy=y; 
      repaint();
    }
  } 
}



  
  

⌨️ 快捷键说明

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