在我的程序中添加计时器(javafx)

丹尼斯·卢卡斯(Dennis Lukas)

我正在尝试向程序添加计时器。我尝试调用java.util.Timer,但由于我不完全了解其背后的概念,这使我感到沮丧。我刚刚完成了一个学期的python编码课程,但这对我来说是一个完全不同的水平。

import javafx.application.Application;
import javafx.event.ActionEvent;
import javafx.event.EventHandler;
import javafx.scene.Scene;
import javafx.scene.control.Button;
import javafx.scene.layout.StackPane;
import javafx.scene.text.Text;
import javafx.stage.Stage;

import java.awt.event.ActionListener;
import java.util.Date;
import java.util.Timer;
import java.util.TimerTask;

public class main extends Application implements EventHandler<ActionEvent>{

    Button button;
    Button button2;
    Counter counter = new Counter(0);
    Counter timecounter = new Counter(0);
    Text text_counter = new Text(counter.S_count.get());
    Text text_timecounter = new Text(timecounter.S_count.get());

    Date currdate = new Date();
    int currsec = currdate.getSeconds();


    public static void main(String[] args) {
        launch(args);


    }


    @Override
    public void start(Stage primaryStage) throws Exception {
        primaryStage.setTitle("Counter Window");

        button = new Button();
        button2 = new Button();
        button.setText("Reset");
        button.setOnAction(this);
        button2.setText("Tick");
        button2.setOnAction(this);
        button.setTranslateY(-120);
        button2.setTranslateY(-80);
        text_counter.textProperty().bind(counter.S_count);
        text_timecounter.textProperty().bind(timecounter.S_count);
        text_timecounter.setTranslateX(-100);



        StackPane layout = new StackPane();
        layout.getChildren().add(button);
        layout.getChildren().add(button2);
        layout.getChildren().add(text_counter);
        layout.getChildren().add(text_timecounter);

        Scene scene = new Scene(layout, 360,280);
        primaryStage.setScene(scene);

        primaryStage.show();
    }

    @Override
    public void handle(ActionEvent event) {
        if(event.getSource()==button){
            counter.Reset();
        }
        if(event.getSource()==button2){
            counter.Tick();
        }
    }
}

我用主循环在python中构建了一个程序。我在想一种“肮脏”的方式,方法是在循环中添加一个检查,以检查当前日期的秒数是否已更改,如果已更改,则将值增加一。

class timerclass {
    Timer timer1;
    private int timecounter = 0;

    TimerTask Task1 = new TimerTask() {
        @Override
        public void run() {
            setTimecounter(getTimecounter()+1);
        }
    };

    public timerclass(){
        timer1 = new Timer();

    }

    public int getTimecounter() {
        return timecounter;
    }

    public void setTimecounter(int timecounter) {
        this.timecounter = timecounter;
    }
}

这就是我创建新计时器的距离。我知道我必须创建一个任务并将其安排到计时器,但是我丝毫不知道如何...

我将如何处理?很抱歉给您带来不便。

威巴夫G

Timer用于计划任务..那么,您在哪里编写这些任务呢?好吧,你必须在TimerTask课堂上写这些任务

使困惑 ?让我分解一下

Timer timer = new Timer();

现在您已经创建了一个Timer类的对象。现在您必须执行一些任务吧?为此,创建一个对象TimerTask

TimerTask task = new TimerTask()
{
        public void run()
        {
            //The task you want to do       
        }

};

现在,您已经创建了一个任务,应该在run方法中定义要执行的任务。

为什么要自己编写TimerTask类?那就是因为TimerTask是具有三个方法的抽象类。所以您需要定义要使用的任何方法。

现在安排任务

timer.schedule(task,5000l);

注意5000之后的'l'。它表示长数据类型,因为该schedule方法定义为

void schedule(TimerTask task,long milliseconds)

供进一步参考

https://docs.oracle.com/javase/7/docs/api/java/util/Timer.html

https://docs.oracle.com/javase/7/docs/api/java/util/TimerTask.html

本文收集自互联网,转载请注明来源。

如有侵权,请联系[email protected] 删除。

编辑于
0

我来说两句

0条评论
登录后参与评论

相关文章

来自分类Dev

如何在C ++程序中添加计时器

来自分类Dev

不确定如何在我的侦听器代码中添加计时器

来自分类Dev

角度,如何在转盘中添加计时器?

来自分类Dev

如何在ASP.NET MVC中添加计时器倒计时操作

来自分类Dev

我想在我的在线检查项目中添加计时器控件

来自分类Dev

如何在计时器达到0时向在游戏结束的iOS应用中添加计时器?

来自分类Dev

如何添加计时器并向hangman添加类别

来自分类Dev

如何在javascript中的bootstrap进度条中添加计时器

来自分类Dev

如何在winform C#中为动态创建的标签添加计时器?

来自分类Dev

如何添加计时器到jQuery加载div?

来自分类Dev

添加计时器的开始,停止和重置按钮

来自分类Dev

添加计时器并设置大小到viewpager

来自分类Dev

是否可以在按钮上添加计时器?

来自分类Dev

如何向功能添加计时器-iOS Swift

来自分类Dev

在 Python 方法上添加计时器

来自分类Dev

添加计时器时,JPanel 不响应 KeyListener?

来自分类Dev

在我的代码中添加一个计时器

来自分类Dev

在Javascript计时器中添加淡入

来自分类Dev

程序中的计时器每次变短

来自分类Dev

如何在python中使用启动/停止GUI添加计时器

来自分类Dev

如何添加计时器以更改ListPicker中所选项目的图像

来自分类Dev

如何在sweetalert2打开后添加计时器?

来自分类Dev

Java程序中的计时器,倒计时

来自分类Dev

将计时器添加到购物车后,添加计时器以关闭Ajax快速购物车(Shopify)?

来自分类Dev

[eclipse]我想为计时器中的按钮添加另一个动作

来自分类Dev

我的程序中的JavaScript计时器以无法预测的方式停止

来自分类Dev

倒数计时器达到0时,将其添加到倒数计时器中

来自分类Dev

使用间隔计时器增加计数

来自分类Dev

使用间隔计时器增加计数

Related 相关文章

  1. 1

    如何在C ++程序中添加计时器

  2. 2

    不确定如何在我的侦听器代码中添加计时器

  3. 3

    角度,如何在转盘中添加计时器?

  4. 4

    如何在ASP.NET MVC中添加计时器倒计时操作

  5. 5

    我想在我的在线检查项目中添加计时器控件

  6. 6

    如何在计时器达到0时向在游戏结束的iOS应用中添加计时器?

  7. 7

    如何添加计时器并向hangman添加类别

  8. 8

    如何在javascript中的bootstrap进度条中添加计时器

  9. 9

    如何在winform C#中为动态创建的标签添加计时器?

  10. 10

    如何添加计时器到jQuery加载div?

  11. 11

    添加计时器的开始,停止和重置按钮

  12. 12

    添加计时器并设置大小到viewpager

  13. 13

    是否可以在按钮上添加计时器?

  14. 14

    如何向功能添加计时器-iOS Swift

  15. 15

    在 Python 方法上添加计时器

  16. 16

    添加计时器时,JPanel 不响应 KeyListener?

  17. 17

    在我的代码中添加一个计时器

  18. 18

    在Javascript计时器中添加淡入

  19. 19

    程序中的计时器每次变短

  20. 20

    如何在python中使用启动/停止GUI添加计时器

  21. 21

    如何添加计时器以更改ListPicker中所选项目的图像

  22. 22

    如何在sweetalert2打开后添加计时器?

  23. 23

    Java程序中的计时器,倒计时

  24. 24

    将计时器添加到购物车后,添加计时器以关闭Ajax快速购物车(Shopify)?

  25. 25

    [eclipse]我想为计时器中的按钮添加另一个动作

  26. 26

    我的程序中的JavaScript计时器以无法预测的方式停止

  27. 27

    倒数计时器达到0时,将其添加到倒数计时器中

  28. 28

    使用间隔计时器增加计数

  29. 29

    使用间隔计时器增加计数

热门标签

归档