我自己,我总是使用ActionListener
作为摇摆事件处理程序(例如按钮单击),它是我在大多数摇摆应用程序中看到的最常见的侦听器。
但是,stackoverflow中的一些Swing专业人士经常建议使用Action
而不是ActionListener
。这样做有什么好处?
如果您需要跨组件共享功能,则首选Action
。来自文档
如果您有两个或多个执行相同功能的组件,请考虑使用Action对象来实现该功能。
但也说
Action对象是一个动作侦听器,它不仅提供动作-事件处理,还集中处理动作-事件-触发组件的状态,如工具栏按钮、菜单项、常用按钮和文本字段。动作可以处理的状态包括文本、图标、助记词、启用和选定状态。