java - 按下按钮后等待点击输入Javafx

标签 java javafx

我在单击按钮后尝试等待输入时遇到一些问题。

与我的团队一起,我们正在制作一款纸牌游戏,其中纸牌相互攻击,问题是我不知道如何在单击按钮后使事件处理程序等待用户单击另一个按钮按钮。

代码如下所示:

private Button attackingButton(){
    Button b1 = new Button();
    b1.setOnAction(new EventHandler<ActionEvent>()
    {
        public void handle(ActionEvent event){
            //Here i want the user to press another button and, depending which one he 
            //pressed, asing a variable
            Card aCard = //The card that the button pressed has inside
        }
    }

最佳答案

就是这样,您让处理程序等待。相反,您可以根据对象的状态来更改处理程序的行为。如果对象处于“用户尚未按下第一个按钮”状态,则处理程序会执行一项操作。如果该对象位于“用户之前按下了第一个按钮”,则处理程序会执行其他操作。您的处理程序应该查询对象实例字段的状态来确定此状态。

例如,

b1.setOnAction(new EventHandler<ActionEvent>() {
    public void handle(ActionEvent event){
        // may need to use boolean fields or .equals(...) method......
        if (someStateField == someValue) {
            doBehavior1();
        } else {
            doBehavior2();
        }
    }
}

关于java - 按下按钮后等待点击输入Javafx,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/51340702/

相关文章:

java - 偏好屏幕颜色选择器库无法在android studioH中实现

java - JButton不会显示

java - 如何使用 api 流将 bufferedreader 添加到 List

java - 调用 Oracle 存储过程抛出由 : java. sql.SQLException 引起的异常:无效的列类型:1111

Java 读取当前打开用于写入的文本文件

java - 带有自定义对象的 FIlteredList

Javafx Stackpane 显示类似 Java Swing 的 CardLayout

Java - 使程序从文件加载选项的最佳方法是什么?

intellij-idea - 运行 mvn jfx :run with IntelliJ 时出现 UnsatisfiedLinkError

JavaFX - 应用程序 : Only main stage is shown from exported jar file while in Eclipse all dialogs are shown, 为什么会出现这种差异?