抱歉,这是我从未意识到的概念,我从未在项目中使用过。我需要绝对地学习和使用它。
因此,我阅读了许多有关接口和事件处理的文章,但我并不介意。
只是从一个简单的例子开始:
public class Main implements ActionListener{
JButton but=new JButton("BUTTON");
public Main() {
but.addActionListener(this);
}
public void actionPerformed(ActionEvent e) {
// DO SOMETHINGS WHEN THE BUTTON IS CLICKED
}
}
此代码非常简单。我实现了ActionListener接口,因此需要编写自己的方法代码(actionPerformed)。
我不明白的是:
1-谁实现
addActionListener
方法?它不是JButton类的方法。谁提供这种方法?2-
addActionListener
和actionPerformed方法之间的桥梁是什么?第一个应该提供Event e
到第二个...并且都必须在某个地方实现...很抱歉这个问题。我试图学习这一点(通过阅读互联网上的许多文章),但是我不明白这是如何工作的!
欢呼,谢谢大家:)
最佳答案
1-谁实现addActionListener方法?它不是JButton类的方法。谁提供这种方法?
JButton扩展了AbstractButton,从中继承了addActionListener。
2-addActionListener和actionPerformed方法之间的桥梁是什么?第一个应该向第二个提供事件e ...并且都必须在某个地方实现...
简而言之:当按下屏幕上的特定区域时,AWT事件处理程序线程会通知位于屏幕该区域的UI元素。
在我们的例子中,如果UI元素是按钮,则按钮事件处理逻辑会在操作侦听器列表(通过“ addActionListener”注册)上循环并在每个侦听器中调用“ actionPerformed”方法。
有关使用按钮的信息和示例,请参见Java教程中的How to Use Buttons, Check Boxes, and Radio Buttons。