javafx 按钮有什么方法可以监听不同的事件处理程序吗?

Is there any way where a javafx button can listen from different event handlers?

我是 javafx 的新手。我想写一个简单的 javafx 程序,当第一次点击一个按钮时,矩形的颜色应该变成其他颜色,例如绿色,当第二次点击它时,颜色应该变回原来的颜色. 但是按钮只允许单击一次? 帮忙看看有没有解决办法。

这是一个代码。

您可以尝试使用简单的布尔值来检查之前是否更改过颜色:

    boolean flag = false;
    @FXML
    private void onButtonClick(){
        if (flag){
            //change to e.g. red
        } else {
            //change to e.g. green
        }
        flag = !flag;
    }

这段代码很简单,如果你只想在两种颜色之间切换就足够了:)