我在JButton上设置ActionListener时遇到了一些麻烦,这是代码...
package pipes;
import java.awt.*;
import java.awt.event.*;
import javax.swing.*;
public class PipesUI extends javax.swing.JFrame {
Main main = new Main();
JButton addPipeButton = new JButton("Add Pipe");
public PipesUI(){
addUI();
setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
}
private void addUI(){
addPipeButton.addActionListener(this);
}
public void actionPerformed(ActionEvent e){
if (e.getSource()==addPipeButton)
main.addPipe();
else
;
}
public static void main(String args[]) {
PipesUI pipesUI = new PipesUI(); // create an instance of the menu
pipesUI.setSize(500,500);
pipesUI.setVisible(true);
}
}
错误就在网上
addPipeButton.addActionListener(this);
(this)似乎不喜欢,错误显示为“不兼容的类型:PipesUI无法转换为ActionListener”
任何帮助将非常感谢。
最佳答案
您创建了actionPerformed
方法,但是没有将您的类声明为ActionListener
。实现该接口:
public class PipesUI extends javax.swing.JFrame implements ActionListener {