【问题标题】:Using ActionListener and KeyListener in same class [closed]在同一类中使用 ActionListener 和 KeyListener [关闭]
【发布时间】:2017-03-07 10:42:48
【问题描述】:

实际上,我正在编写一个程序,我既需要检测操作,也需要检测键盘上的按键。如何在同一个类中同时实现 ActionListener 和 KeyListener?如果我不能,请建议一种替代方法来编码相同的情况。非常感谢大家的回答。

【问题讨论】:

  • 你试过了吗?
  • 是的,我已经尝试过很多次了
  • 仅供参考,在 SO 上的最佳实践是 a) 显示(相关)代码以显示您的尝试以及使人们能够重现问题,b) 准确解释 what 不起作用(“我试过它不起作用”并没有告诉我们任何事情)。检查stackoverflow.com/help/how-to-ask
  • 在不向我们展示你的作品的情况下,你强迫人们给出相同类型的问题多次给出的相同答案。

标签: java swing actionlistener keylistener


【解决方案1】:

让他们实现你的接口:

public class MyClass implements KeyListener, ActionListener {

    public void actionPerformed(ActionEvent e){/** do something **/}

    public void keyPressed(KeyEvent e){/** do something different **/}

}

(未经测试)

KeyListener 类需要一堆其他方法,但我想你的 IDE 会告诉你...

【讨论】:

  • 这样不行...会显示错误,因为 MyClass 不是抽象的,所以不会覆盖 KeyListener 的方法...
  • 我告诉过你,你需要在 KeyListener-class 中实现所有的方法。很明显,是的。覆盖所有方法,您就可以开始了。
  • 或者你可以使用 KeyAdapter
【解决方案2】:

你可以这样做,

public class example implements ActionListener, KeyListener { }

【讨论】:

    猜你喜欢
    • 2016-09-21
    • 1970-01-01
    • 1970-01-01
    • 2017-07-24
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2018-08-29
    • 1970-01-01
    相关资源
    最近更新 更多