java - 如何在每次单击 JButton 时取走一个数字

标签 java swing actionlistener

所以基本上我需要能够点击一个按钮,每次点击它都会从 100 中减去 10。所以点击 10 次后它应该显示 0。

    public class numberclass{
    public String numbermethod() {
    int number = 100;

    String result = Integer.toString(number);

    return result;
    }
}

//part of swing class below

String numberString = numberclass.numbermethod();

button.addActionListener(new ActionListener() {
        public void actionPerformed(ActionEvent e) {


            textArea.append(numberString);

             }
        }
    });

显然,按目前的情况,单击后文本字段中仅显示 100。我尝试了很多方法来完成这项工作,但我觉得我错过了一些至关重要的东西。我试图用谷歌搜索这个基本的基本问题,但是我似乎无法正确地表达它。

最佳答案

首先从某物中减去某物。现在,您可以通过多种方法来实现此目的,但让我们从使用方法并维护类封装开始......

public class NumberClass {

    private int number = 100;

    public void update() {
        number -= 10;
    }

    public String numbermethod() {
        String result = Integer.toString(number);
        return result;
    }
}

然后更新要显示的文本

button.addActionListener(new ActionListener() {
    public void actionPerformed(ActionEvent e) {
        numberClass.update();
        String numberString = numberClass.numbermethod();           
        textArea.append(numberString);
    }
});

关于java - 如何在每次单击 JButton 时取走一个数字,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/32344727/

相关文章:

java - 让 "Calling method"等待数据 "Return"

Android:(简单)缺少导入或...?

java - AES加密跨组件Java/Scala和C

java - 在 Java 中生成一个在 JVM 关闭后仍然存在的进程

java - 数据库插入后 JTable 不刷新

java - 使用解析的信息填充 JTable

java - 在 Windows 操作系统上,FrameView 中不显示 JDesktopPane 和 JinternalFrame

java - 多线程的 System.setErr() 的正确方法?

java - 添加滚动到文本区域

java - 堆栈问题,不存储值