我必须为 JPanel 编写一个 ActionListener。
任务,取决于按下的按钮以引起所需的动作。我知道的唯一方法 - 使用event.getActionCommand()
并依赖于该字符串从按钮获取标签以引起所需的操作。
但我认为绑定到标签是错误的方式,非常错误的方式。还有其他选择吗?
换句话说,我的问题是:如何确定按下的按钮?
我必须为 JPanel 编写一个 ActionListener。
任务,取决于按下的按钮以引起所需的动作。我知道的唯一方法 - 使用event.getActionCommand()
并依赖于该字符串从按钮获取标签以引起所需的操作。
但我认为绑定到标签是错误的方式,非常错误的方式。还有其他选择吗?
换句话说,我的问题是:如何确定按下的按钮?
我做过的一件事是这样的:
// Action Listener method
public void actionPerformed(ActionEvent e) {
// Did somebody push my button?
if (e.getSource() == myButton) {
myCaller.doButton(myButton, myValue);
}
}
Swing 是一种事件驱动的架构。因此,当您尝试与组件执行任何类型的交互时,理想情况下您将捕获或处理与组件关联的相应事件。
您需要做的是添加一个ActionListener,当执行一个动作(在这种情况下按下按钮)时,您将调用您在代码中谈论的方法( “必需的动作” )。如果您是 ActionListener 的新手,您可能会发现:“How to Write an Action Listener”会有所帮助