java语言GUI编程之鼠标适配器总结

来源:互联网 发布:单片机 脉冲交流信号 编辑:程序博客网 时间:2024/05/18 21:05
/* 时间:2015年3月21日21:02:11 程序目的:使用适配器MouseAdapter来在窗体中点击生成红色圆圈 在这里我们总结一下鼠标事件适配器的 类MouseAdapter 继承自Object  接收鼠标事件的抽象适配器类。此类中的方法为空,此类存在的目的是方便创建侦听器  对象。  鼠标事件使用户能够跟踪鼠标何时被按下,释放,单击,移动,拖动,何时进入一个  组件,何时推出,何时滚动鼠标游轮  扩展此类可创建MouseEvent(包括拖动和移动事件)或MouseWheelEvent侦听器  ,并针对所需时间重写方法。(如果要实现MouseListener和MouseMotinListener接口,则  必须定义该接口中的所有方法。此抽象类将所有的方法定义为null,所以只需针对关心事件定义方法)   使用扩展的类创建一个侦听器对象,然后使用组件的addMouseListener、addMouseMotionListener和 addMouseWheelListener方法想该组件注册此侦听器对象。侦听器对象中的相关方法被调用。MouseEvent或者 MouseWheelEvent在一下情况下被传递给该对象。  当鼠标键被按下。释放或单击(按下并释放)时  当鼠标光标进入或退出某个组件时  当鼠标游轮滚动,或者鼠标被移动或者拖动时*/import java.awt.*;import java.awt.event.*;import java.util.*;
public class MyMouseAdapter { public static void main(String[] args) {  new MyFrame("Drawing....");  }}
class MyFrame extends Frame { ArrayList points = null;  public MyFrame(String title) {  super(title);  points = new ArrayList();  setLayout(null);  setBounds(300, 300, 500, 600);  addMouseListener(new MyAdapter());  setVisible(true);   }  public void paint(Graphics g) {  Iterator it = points.iterator();    while (it.hasNext()) {   Point p = (Point)it.next();   Color c = g.getColor();   g.setColor(Color.RED);   g.fillOval(p.x, p.y, 50, 50);  } }  public void addPoint(Point p) {  points.add(p); } }
class MyAdapter extends MouseAdapter { private int num = 0; public void mouseClicked(MouseEvent e) {  MyFrame mf = (MyFrame)e.getSource();  mf.addPoint(e.getPoint());  mf.repaint(); } }
1 0
原创粉丝点击