有 Java 编程相关的问题?

你可以在下面搜索框中键入要查询的问题!

Java秒表计时器不会停止

我有一个秒表类,我想实现圈功能

当按下运行/停止按钮时,计时器开始在显示屏上计数。如果 再次按下运行/停止按钮,计时器停止。如果再次按下,则 计时器继续计数,以此类推。 如果在计时器运行时按下“圈速/复位”按钮,显示屏 冻结,并显示圈速,计时器继续计数(只是没有) 显示)。如果再次按下圈速/复位按钮,显示屏将恢复显示 定时器是实时的。如果按下“圈速/复位”按钮,显示屏 冻结等等。 如果在计时器运行时按下“圈速/复位”按钮,显示屏 冻结(但计时器仍在运行)。如果现在按下运行/停止按钮, 计时器停止计数,但显示屏继续显示圈速。如果 按下Lap/Reset(圈/复位)按钮后,显示屏将更改为显示计时器(该计时器 现在已停止)。如果现在按下运行/停止按钮,计时器将恢复 数数。或者,如果按下“圈速/重置”按钮,计时器将重置为 零

public void startStop() {

    timer = new Timer(100, new TimerHandler());
    if (!isRunning) {
        isRunning = true;
        timer.start();
    } else {
        isRunning = false;
        timer.stop();
    }
    //If now the Run/Stop button is pressed the timer resumes counting
    if(!lapPress && !isRunning){
        isRunning = true;
    }

}

public void lapReset() {
    if (!lapPress) {
        lapPress = true;
    } else if (lapPress) {
        lapPress = false;
    } 

    System.out.println(isRunning + " " + lapPress);

    // Lap pressed + timer running -> show lap-time + timer continue
    if (isRunning && lapPress) {
        timer.stop();
    }
    // Lap press + timer running
    if (isRunning && !lapPress) {
        timer.start();
    }
}

我就是没法用膝盖功能。基本的秒表工作正常,知道吗?我更新了要求,只是想检查我按下按钮的逻辑,现在如果我单击开始和圈,显示屏将冻结,但如果我单击开始和圈,显示屏将继续更新


共 (1) 个答案