java - Action 事件停止

标签 java swing button actionlistener

如何停止 Button2 的 Action 事件以及 Button1 之后的更多运行。 Button1 只需要执行 Button1 操作事件,然后停止。

请帮帮我,谢谢

public void actionPerformed(ActionEvent ae) {
    if (ae.getSource().equals(button1)){
        System.out.println("Button 1");

    }

    if (ae.getSource() == button2){
        System.out.println("Button 2!");
    }

编辑:

抱歉,代码错误

在主要部分:

Button1.addActionListener(this);
        jPanel1.add(Button1);
        Button2.addActionListener(this);
        jPanel1.add(Button2);

不在主目录中:

 public void actionPerformed(ActionEvent ae) {
        Object Button1 = null;
        if (!ae.getSource().equals(Button1)){
            System.out.println("Oben");
        }
        Object Button2 = null;
        if (ae.getSource() == (Button2)){
            System.out.println("Links");
        }


             }

如果我按下 Button1,我会得到“Oben”

如果我按下 Button2,我也会得到“Oben”

为什么我没有得到“链接”

最佳答案

您的代码中有两个问题:

  1. 您正在将 Button1Button2 设置为 null
  2. 您的 if 语句的布局方式使得在一次 actionPerformed 调用中可以运行多个 if 语句

试试这个:

public void actionPerformed(ActionEvent ae) {
    if(ae.getSource().equals(this.Button1)) {
        System.out.println("Button 1");
    } else if (ae.getSource().equals(this.Button2)) {
        System.out.println("Button 2");
    }
}

此代码假定 Button1Button2actionPerformed 方法所属类的成员。

关于java - Action 事件停止,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/16817814/

相关文章:

java - 是否需要将传递依赖项作为 bundle 导入到 KURA

java - 添加新值后,记录被覆盖,而不是在 jtable 上添加新行

从数组中选择随机项目的javascript按钮

java - 在JavaFX中同时进行场景和舞台交互

java - 如何在同一页面上显示 Controller 的异常?

Javax Swing Timers - 更改延迟时间

javafx 使按钮填充宽度

Android使用清除按钮清除所有EditText字段

javascript - 请求在 doPost servlet 中没有参数

java - 将 ImageIcons 添加到 JButtons 后,按钮不再起作用