Java 鼠标事件

发表于:2009-12-11 11:05

字体: | 上一篇 | 下一篇 | 我要投稿

 作者:未知    来源:51Testing软件测试网采编

#
java

  import java.awt.*;

  import java.awt.event.*;

  import javax.swing.*;

  public class MoveMessageDemo extends JFrame {

  public MoveMessageDemo() {

  MoveMessagePanelNew p = new MoveMessagePanelNew("Welcome to Java");

  getContentPane().setLayout(new BorderLayout());

  getContentPane().add(p);

  }

  /** Main method */

  public static void main(String[] args) {

  MoveMessageDemo frame = new MoveMessageDemo();

  frame.setTitle("MoveMessageDemo");

  frame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);

  frame.setSize(300, 300);

  frame.setVisible(true);

  }

  }

  // MoveMessagePanel draws a message

  class MoveMessagePanel implements MouseMotionListener {

  public void mouseMoved(MouseEvent e) {

  }

  /** Handle mouse dragged event */

  public void mouseDragged(MouseEvent e) { //鼠标按键在组件上按下并拖动时调用。

  // Get the new location and repaint the screen

  System.out.println(e.getX());

  System.out.println(e.getY());

  }

  }

  // MoveMessagePanelNew draws a message

  class MoveMessagePanelNew extends JPanel implements MouseMotionListener {

  private String message = "Welcome to Java";

  private int x = 20;

  private int y = 20;

  public MoveMessagePanelNew(String s) {

  message = s;

  this.addMouseMotionListener(this);

  }

  public void mouseMoved(MouseEvent e) {

  }

  public void mouseDragged(MouseEvent e) {

  // Get the new location and repaint the screen

  x = e.getX();

  y = e.getY();

  repaint();

  }

  protected void paintComponent(Graphics g) {

  super.paintComponent(g);

  g.drawString(message, x, y);

  }

  }

《2023软件测试行业现状调查报告》独家发布~

关注51Testing

联系我们

快捷面板 站点地图 联系我们 广告服务 关于我们 站长统计 发展历程

法律顾问:上海兰迪律师事务所 项棋律师
版权所有 上海博为峰软件技术股份有限公司 Copyright©51testing.com 2003-2024
投诉及意见反馈:webmaster@51testing.com; 业务联系:service@51testing.com 021-64471599-8017

沪ICP备05003035号

沪公网安备 31010102002173号