Java mouseDown事件对象



使用方法时

public boolean mouseDown(Event e, int x, int y)

在Java中,Event对象的作用是什么?我正在尝试编写一个程序,其中包括有人点击创建的矩形

g.fillRect(horizontal position,vertical position,height,width);

我假设您使用mousedown方法使用事件处理来获取矩形上的点击,但您如何做到这一点?请在你的回答中举例说明。我在谷歌上做了研究,没有发现任何东西,即使是真正特定的搜索。非常感谢您的帮助!

mouseDown是一个鼠标事件。您需要做的是向程序中添加一个事件侦听器,这样当单击鼠标时,事件处理程序就会调用一个方法。在这个方法中,你想看看鼠标的x,y位置是否在矩形内。

您将需要实现MouseListener"实现MouseLister"

// import an extra class for the MouseListener 
import java.awt.event.*;
public class YourClassName extends Applet implements MouseListener 
{
     int x = horizontal position;
     int y = vertical position;
     g.fillRect(x,y,width,height);
     addMouseListener(this); 
     // These methods always have to present when you implement MouseListener
     public void mouseClicked (MouseEvent mouseEvent) {} 
     public void mouseEntered (MouseEvent mouseEvent) {} 
     public void mousePressed (MouseEvent mouseEvent) {} 
     public void mouseReleased (MouseEvent mouseEvent) {}  
     public void mouseExited (MouseEvent mouseEvent) {}  
     public void mouseClicked (MouseEvent mouseEvent) {
     mouseX = mouseEvent.getX();
     mouseY = mouseEvent.getY();
     if(mouseX > x && mouseY > y && mouseX < x+width && mouseY < y+height){
         //
         // do whatever 
         //
     }
}

了解更多。。。http://docs.oracle.com/javase/6/docs/api/java/awt/event/MouseListener.html

Event对象包含类似的信息

  1. 事件的xy坐标
  2. 发生事件的目标组件
  3. 偶数发生时

它还提供了许多其他信息
注意:该方法已被弃用,取而代之的是processMouseEvent()。

正如您所问的这个

in Java, what does the Event object do or what is it used for?

-首先有Event Source,当在事件源上发生任何操作时,Event Object会被抛出到call back方法

-Call Back方法是Listener(接口)内的方法,该方法是实现此侦听器的Class需要实现的

-当对事件源执行操作时,此回调方法中的语句将规定需要执行的操作

例如:

假设

  Event Source - Button
  When Clicked - Event object is thrown at the call back method
  Call back method - actionPerformed(ActionEvent e) inside ActionListener.

-您的示例中,当鼠标按钮按下时,会记录x和y坐标。然后是它在回调方法中抛出的事件对象,该方法需要由实现此Listener的类。

-最好使用MouseListener InterfacemousePressed方法。

请参阅此链接:

http://docs.oracle.com/javase/6/docs/api/java/awt/event/MouseListener.html#mousePressed%28java.awt.event.MouseEvent%29

相关内容

  • 没有找到相关文章

最新更新