【发布时间】:2016-02-20 12:16:00
【问题描述】:
我正在尝试了解有关事件处理的更多信息,但无论我在哪里读到它,它主要是关于如何使用它,所以会发生一些事情,而不是它是如何工作的。
到目前为止,我知道单击按钮时发生某些事情的两种方法。
动作监听器:
myButton.addActionListener(new ActionListener() { @override actionPerformed... });
和抽象动作:
public class MyAction extends AbstractAction {
public MyAction(String text, ImageIcon icon, String desc, Integer mnemonic) {
super(text, icon);
putValue(SHORT_DESCRIPTION, desc);
putValue(MNEMONIC_KEY, mnemonic);
}
public void actionPerformed(ActionEvent e) {
System.out.println("Action", e);
}
}
MyAction myAction = new MyAction(...);
myButton.setAction(myAction);
我知道我可以将我想要发生的所有事情写入actionPerfomed() 方法。
但由于我不知道,在后台到底发生了什么,我无法判断一个是否比另一个有优势,或者我应该在哪种情况下使用哪个?
【问题讨论】:
标签: java actionlistener abstract-action