如何实现mouseListener

时间:2013-02-12 00:19:29

标签: java eclipse actionlistener mouselistener

我知道在课程开始时你可以写implements ActionListener,然后你必须创建public void actionPerformed(ActionEvent e)才能使它可行。是否可以使用mouseListener执行相同的操作?如果是这样,您需要采用什么方法来代替actionPerformed

编辑:这是我的班级声明:

public class Basic_Book extends JFrame implements ActionListener implements MouseListener

这是我旁边显示的错误消息:

  • 可序列化类Basic_Book不声明类型的静态最终serialVersionUID字段  长

  • 令牌“implements”上的语法错误,。预期

4 个答案:

答案 0 :(得分:6)

如果查看javadocs .. MouseListener附带了许多方法。 在其他方面没有实现所有内容,您可以使用MouseAdapter实现MouseListener和其他接口,但已经提供了存根方法。

mouseClickedmouseEntered等。 编辑后:

class Basic_Book extends JFrame implements ActionListener,MouseListener

使用逗号分隔接口。 ActionListener只有actionPerformed所以你必须只为ActionListener实现, MouseListener有4个或更多,你需要实现ALL。或者使用MouseAdapter并覆盖必要的方法。

对于serialVersionUID,让Eclipse为您做到这一点。在错误上尝试ctrl + space来调用Eclipse的intellisense,它会给你一些选择。选择显示生成serialVersionUID

的那个

我不记得它是如何实际完成的(但它应该有效!手指交叉)。

答案 1 :(得分:2)

Official Java API Documentation是任何Java程序员必不可少的工具。特别是,请查看the docs for MouseListener以了解您需要实施哪些方法。

您也可以简单地添加implements MouseListener并尝试编译您的课程。编译器会快速告诉您需要实现的方法。如果您使用的是Eclipse,NetBeans或IntelliJ等IDE,则甚至无需编译代码。每个IDE都有自己的方式告诉您需要哪些方法,甚至为您生成方法体。我强烈建议您熟悉一个好的IDE。它将为您节省大量编写代码的时间。

答案 2 :(得分:2)

ActionListenerMouseListener是一个界面,这意味着,是的,你可以用同样的方式实现。

MouseListener定义了必须实现的五种方法。

  • mouseClicked(MouseEvent e)
  • mouseEntered(MouseEvent e)
  • mouseExited(MouseEvent e)
  • mousePressed(MouseEvent e)
  • mouseReleased(MouseEvent e)

您真的应该先查看Java Docstutorials

答案 3 :(得分:0)

实际上编译器应该告诉你答案,但应该像mouseLeave,mouseEnter,mouseHover,mousePressed