等待玩家按下按钮JavaFX

时间:2018-01-03 16:18:32

标签: java javafx

嗨所以我正在制作一个Simongame,我需要等待玩家按下一系列按钮(将整数发送到列表)并将其与另一个列表进行比较,但我没有找到等待事件类型功能。那么如何让我的游戏循环等待玩家在尝试比较它之前按下一定数量的按钮呢?

start.setOnAction(new EventHandler<ActionEvent>() {
    @Override
        public void handle(ActionEvent event) {
            Game = 1;
            While(Game == 1)
                //Game adding random values to a list  
                //4 Buttons Action event adding values to another list with 4 different values and a button to validate the values put into the list

                //HERE I need the loop to wait for buttons to be pushed and validated by another button before trying to compare the two list

               //Comparing the two lists , printing a message if they are not the same or returning in the loop and add a new value to the randomly generated list                 
        }
    }
});

1 个答案:

答案 0 :(得分:3)

你不是。我很认真,JavaFX是围绕事件处理而构建的。 您尝试做的是轮询数据,但您并不需要。您可以使用

添加Click事件处理程序
myButton.setOnAction(new EventHandler<ActionEvent>() {
    @Override public void handle(ActionEvent e) {
        //TODO all your events and stuff here
    }
});

在ActionEvent的处理程序内部,您可以使用代码执行某些操作。如果您想要区分右键单击和左键单击,将鼠标拖过或拖出等,还有另一种处理按钮事件的方法。这是通过myButton.addEventHandler(EventType.EVENT), myEventHandler);