骰子IlmageVIew javaFx

时间:2018-03-15 19:54:49

标签: java javafx dice

我有一个用于启动骰子的应用程序,当您按下按钮启动它时,会创建一个随机数6次(使用Thread.sleep()),因此必须显示与该数字对应的面部骰子,但这里只显示最后一位数字,其他数据显示之前没有出现。 这是我的代码:

私人列表listeFaceDice;

for(i=0;i<6;i++) {
        setRandomNum(rand.nextInt((6 - 1) + 1) + 1);
        imageView.setImage(listeFaceDice.get(randomNum-1)); 
        Thread.sleep(1000);
    }

使用TimeLine:

Timeline timeline = new Timeline(new KeyFrame(Duration.seconds(0.5), event -> {
        setRandomNum(rand.nextInt((6 - 1) + 1) + 1);
        imageView.setImage(listeFaceDice.get(randomNum-1));
        //System.out.println(getRandomNum());
    }));
    timeline.setCycleCount(6);
    timeline.play();
    timeline.setOnFinished(e -> {
        setRandomNum(randomNum);
    });

它适用于LimeLine的时间,但我不知道如何在动画结束时获取值,因为我在按下按钮时调用了此方法。 提前谢谢;)

0 个答案:

没有答案