Java 如何禁用按钮直到某些文本字段被填充?
使用JavaFX8,我有两个文本字段和一个按钮进行验证。我希望在两个字段都具有有效值之前禁用此按钮 最好的方法是什么Java 如何禁用按钮直到某些文本字段被填充?,java,javafx,Java,Javafx,使用JavaFX8,我有两个文本字段和一个按钮进行验证。我希望在两个字段都具有有效值之前禁用此按钮 最好的方法是什么 谢谢,这个问题有几个答案。我只发布简单的答案。只需在按钮操作侦听器中添加一个布尔值和一个if-else语句。如果满足条件,则运行按钮。否则什么也不做。您还可以根据是否满足此条件设置背景色。为了更好地显示按钮已禁用 btn.setOnAction(new EventHandler<ActionEvent>() { @Override public vo
谢谢,这个问题有几个答案。我只发布简单的答案。只需在按钮操作侦听器中添加一个布尔值和一个if-else语句。如果满足条件,则运行按钮。否则什么也不做。您还可以根据是否满足此条件设置背景色。为了更好地显示按钮已禁用
btn.setOnAction(new EventHandler<ActionEvent>() {
@Override
public void handle(ActionEvent event) {
if(true){ // your boolean operator
System.out.println("do something"); // Your button statement
}
}
});
btn.setOnAction(新的EventHandler(){
@凌驾
公共无效句柄(ActionEvent事件){
if(true){//您的布尔运算符
System.out.println(“做点什么”);//您的按钮语句
}
}
});
使用
给定
TextField textField1 ;
TextField textField2 ;
你能行
BooleanBinding textField1Valid = Bindings.createBooleanBinding(() -> {
// check textField1.getText() and return true/false as appropriate
}, textField1.textProperty());
BooleanBinding textField2Valid = Bindings.createBooleanBinding(() -> {
// check textField2.getText() and return true/false as appropriate
}, textField2.textProperty());
然后
Button button = new Button("OK");
button.disableProperty().bind(textField1Valid.not().or(textField2Valid.not()));
请添加您的代码。请检查此解决方案,这正是我想要的,谢谢。最简单的答案,但与问题不匹配,即禁用按钮,直到两个文本字段都有效@詹姆斯的答案更准确!无论如何,谢谢你:)