我有2个类,一个是JPanel的实例(称为xContain),另一个没有扩展任何东西(称为xShape)。这里粘贴的代码太多了,我不想一spoon而就,所以我将仔细解释它。

我正在尝试在我的xShape实例上调用.addActionListener()。但是,由于没有该方法,因此将无法使用。但是,当我对JButton或Timer对象的实例执行此操作时,它会起作用,我发现这是因为该方法是从类javax.swing.AbstractButton继承的。

我必须继承xShape类什么内容,以便可以向其添加操作侦听器?

最佳答案

如果您的类应该用作按钮或菜单(如@HovercraftFullOfEels所述),则可以声明您的类继承自AbstractButton

public class Test extends AbstractButton


并覆盖addActionListener方法:

@Override
public void addActionListener(ActionListener l)
{
    super.addActionListener(l);
    // ...
}


编辑:

您需要的进口是:

import java.awt.event.ActionListener;
import javax.swing.AbstractButton;

09-05 04:47