Logo Questions Linux Laravel Mysql Ubuntu Git Menu
 

ControlsFX: Validation result

I want to do some validation in JavaFx using ControlsFX. my code is like this:

ValidationSupport support = new ValidationSupport();
boolean isValid = true;
if(textField.getText().trim().isEmpty()) isValid = false;
support.registerValidator(testField, Validator.createEmptyValidator("This field is required!"));

My question is if is it possible to omit the if condition and extract whether or not the textField is empty from the validation support

like image 628
Ayoub.A Avatar asked Aug 27 '26 15:08

Ayoub.A


1 Answers

Your isValid variable and the if statement aren't really doing anything. The ValidationSupport contains an observable invalid property with which you can register listeners:

support.invalidProperty().addListener((obs, wasInvalid, isNowInvalid) -> {
    if (isNowInvalid) {
        System.out.println("Invalid");
    } else {
        System.out.println("Valid");
    }
});

or (perhaps more conveniently) register bindings:

Button okButton = new Button("OK");
okButton.disableProperty().bind(support.invalidProperty());

This last code snippet will ensure the okButton is only enabled if the text field is not empty.

like image 180
James_D Avatar answered Aug 29 '26 05:08

James_D



Donate For Us

If you love us? You can donate to us via Paypal or buy me a coffee so we can maintain and grow! Thank you!