我已经开始学习事件处理程序,并尝试尝试一些基本概念。我在下面的代码中遇到了一个奇怪的错误。 我正在使用 Eclipse,在尝试向按钮 b 添加 ActionListener 时出现以下错误:
“Button 类型中的 addActionListener(ActionListener) 方法不适用于 new ActionAdapter(){} 类型”
“ActionAdapter 无法解析为类型”
import java.awt.*;
import java.awt.event.*;
public class Test extends Frame{
private TextField text = new TextField(20);
Button b;
private int num_clicks = 0;
public static void main(String args[]){
Test appwind = new Test("title");
appwind.setSize(300,300);
appwind.setTitle("Irrelevant");
appwind.setVisible(true);
}
public Test(String title)
{
super(title);
setLayout(new FlowLayout());
addWindowListener(new WindowAdapter(){
public void WindowClosing(WindowEvent e) {
System.exit(0);}});
b = new Button("Click");
add(b);
add(text);
b.addActionListener(
new ActionAdapter()
{
public void actionPerformed(ActionEvent e)
{
num_clicks++;
text.setText("number of times clicked: " + num_clicks);}
});
}
}
最佳答案
适配器类是当底层接口(interface)有 2 个或更多方法时提供的便利类。 ActionListener
只有一种方法 - 使用 ActionListener
代替
b.addActionListener(new ActionListener() {
public void actionPerformed(ActionEvent e) {
...
}
});
关于java - ActionAdapter 无法解析为类型,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/21710582/