当用户已经在 J​​avaFX 中填写文本时如何启用按钮

How to enable a button when user already fill in the text in JavaFX

public class FirstStage{


@FXML
private Label HighScore;

@FXML
private TextField Player_Name;

@FXML
private Button closedButton;

@FXML
private Button Button_Play;


@FXML
void ButtonPlay(ActionEvent event) throws Exception{
    if(Player_Name.getText().isEmpty()) {
        Button_Play.setDisable(true);
        Player_Name.setPromptText("Please Enter Your Name");
        
    }
    else{
        String name = Player_Name.getText();
        new SecondStage(name);
    }
    
}

这是我的MainController.java。我希望在用户输入文本后启用该按钮。有谁知道如何在用户已经填写文本后启用返回按钮。

您可以 bind Button 使用 TextField 文本 属性 禁用 属性(我修改了名称以符合 Java命名约定):

buttonPlay.disableProperty().bind(playerName.textProperty().isEmpty());

或者如果您需要最少的字母数:

int minLength = 3;

buttonPlay.disableProperty().bind(
        playerName.textProperty().length().lessThan(minLength));

注意:您应该在 controller 初始化程序中执行 binding