Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/java/351.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
如何使用java中的ActionListener执行多个操作?_Java_Event Handling_Awt_Actionlistener - Fatal编程技术网

如何使用java中的ActionListener执行多个操作?

如何使用java中的ActionListener执行多个操作?,java,event-handling,awt,actionlistener,Java,Event Handling,Awt,Actionlistener,我现在正在写一个程序,包含两个JButton。包含这些JButton的类实现ActionListener,因此包含ActionPerformed方法(ActionEvent e)。在同一个ActionPerformed方法中,这些按钮是否都可以执行唯一的操作?当然,您可以通过以下方式区分它们: public void actionPerformed(ActionEvent e) { Object src = e.getSource(); if (src == bt1) { //

我现在正在写一个程序,包含两个JButton。包含这些JButton的类实现ActionListener,因此包含ActionPerformed方法(ActionEvent e)。在同一个ActionPerformed方法中,这些按钮是否都可以执行唯一的操作?

当然,您可以通过以下方式区分它们:

public void actionPerformed(ActionEvent e) {
  Object src = e.getSource();

  if (src == bt1) {
    // do actions for bt1;
  }
  else if (src == b2) {
   // do action for bt2;
  }
}

当然,您可以通过以下方式区分它们:

public void actionPerformed(ActionEvent e) {
  Object src = e.getSource();

  if (src == bt1) {
    // do actions for bt1;
  }
  else if (src == b2) {
   // do action for bt2;
  }
}

使用
e.getSource()
始终可以获取actionEvent的源代码。然后将该源代码与按钮进行比较,如果它们相等,则执行特定操作。

使用
e.getSource()
始终可以获取actionEvent的源代码。然后将源代码与按钮进行比较,如果它们相等,则执行特定操作。

当然。比较
ActionEvent
对象的
source
,查看事件来自哪个按钮(即调用
getSource()
),然后相应地采取行动。

确定。比较
ActionEvent
对象的
source
,查看事件来自哪个按钮(即调用
getSource()
),然后相应地采取行动。

是的,但通常最好为每个控件添加一个侦听器(或
Action
)。有关更多详细信息,请参阅。是的,但通常最好为每个控件添加一个侦听器(或
Action
)。有关更多详细信息,请参阅。