Java addActionListener 错误

标签 java swing events actionlistener

我正在用 Java 制作一个按钮 ActionListener,并且

d1.addActionListener(this);

给了我一个关于“this”的错误,但是

d1.addActionListener((ActionListener) this);

有效。为什么我需要添加“(ActionListener)”?我在教程中看到第一个应该有效;为什么不适合我?

最佳答案

很简单,this 不是一个 ActionListener。您的类是否实现了 ActionListener 接口(interface)?编译器告诉您事实并非如此。

也就是说,这会起作用:

public class Foo implements ActionListener {

    @Override
    public void actionPerformed(ActionEvent e) {
       //....
    }

}

但这不会

public class Bar {

}

关于Java addActionListener 错误,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/33859589/

相关文章:

java - 在 javafx 中选择不同选项卡时更改阶段 titleProperty

javascript - 在ReactJS中捕获 'escape'按键

java - 在 Restful-WebService 响应中包含所有 @OneToMany 实体?

java - 当我打印它们时,值不会改变

java - 如何在 Linux 上的 X Window 系统中找到一个窗口并将其置于最前面?

java - JFrame setBackground 的目的是什么

java - 在执行长程序期间动态更新 JTextArea 作为控制台输出?

Java Web 开发说明

java - 两个链接的 JTextPanes

javascript - 复选框检查验证