Passwort Validation

Hey Leute,
ich hab ne kleine Frage ? Ich entwickel grad ein Log in System und wollte unter dem Textfeld Passwort wiederholen dafür sorgen dass ein roter schriftzug erscheint wenn die passwörter nicht übereinstimmen. Ich hab schon viel versucht komm auch nach lannger recherche nicht weiter ?

Java:
ackage auftragsverwaltung;

import com.jfoenix.controls.JFXPasswordField;
import com.jfoenix.controls.JFXTextField;
import com.jfoenix.validation.RequiredFieldValidator;
import java.net.URL;
import java.util.ResourceBundle;
import java.util.regex.Matcher;
import java.util.regex.Pattern;
import javafx.beans.value.ChangeListener;
import javafx.beans.value.ObservableValue;
import javafx.fxml.FXML;
import javafx.fxml.Initializable;
import javafx.scene.control.Alert;
import javafx.scene.control.Alert.AlertType;

/**
* FXML Controller class
*
* @author xom
*/
public class NeuesPasswortController implements Initializable {
    String T =  "Vxz3pqta58p73z";
   
    @FXML
    private JFXTextField Tan;

    @FXML
    private JFXPasswordField pass1;

    @FXML
    private JFXPasswordField pass2;

    /**
     * Initializes the controller class.
     */
    @Override
    public void initialize(URL url, ResourceBundle rb) {
       
        RequiredFieldValidator validator = new RequiredFieldValidator();
        RequiredFieldValidator validator2 = new RequiredFieldValidator();
        RequiredFieldValidator validator3 = new RequiredFieldValidator();
        Tan.getValidators().add(validator);
        pass1.getValidators().add(validator2);
        pass2.getValidators().add(validator3);
        validator.setMessage("Bitte Tan eingeben");
        validator2.setMessage("Bitte Passwort eingeben");      
        validator3.setMessage("Bitte Passwort wiederholen");
        Tan.focusedProperty().addListener(new ChangeListener<Boolean>(){
       
            @Override
            public void changed(ObservableValue<? extends java.lang.Boolean> observable, java.lang.Boolean oldValue, java.lang.Boolean newValue) {
                if(!newValue){
                    Tan.validate();
                    
     
            }              
            }

          
       
        });
        pass1.focusedProperty().addListener(new ChangeListener<Boolean>(){
        @Override
            public void changed(ObservableValue<? extends java.lang.Boolean> observable, java.lang.Boolean oldValue, java.lang.Boolean newValue) {
                if(!newValue){
                   pass1.validate();
     
            }              
            }
       
        });
        pass2.focusedProperty().addListener(new ChangeListener<Boolean>(){
        @Override
            public void changed(ObservableValue<? extends java.lang.Boolean> observable, java.lang.Boolean oldValue, java.lang.Boolean newValue) {
                if(!newValue){
                   pass2.validate();
     
            }              
            }
       
        });
       
       
    } 
   
    
   
}
 
Ok ich habs selbst gelöst dachte nur da gibts ne elegantere lösung

Java:
package auftragsverwaltung;

import com.jfoenix.controls.JFXPasswordField;
import com.jfoenix.controls.JFXTextField;
import com.jfoenix.validation.RequiredFieldValidator;
import java.net.URL;
import java.util.ResourceBundle;
import javafx.beans.value.ChangeListener;
import javafx.beans.value.ObservableValue;
import javafx.fxml.FXML;
import javafx.fxml.Initializable;
import javafx.scene.control.Label;
import javafx.scene.paint.Color;

/**
 * FXML Controller class
 *
 * @author xom
 */
public class NeuesPasswortController implements Initializable {
    String T =  "Vxz3pqta58p73z";
    @FXML
    private Label nachricht;
    
    @FXML
    private JFXTextField Tan;

    @FXML
    private JFXPasswordField pass1;

    @FXML
    private JFXPasswordField pass2;

    /**
     * Initializes the controller class.
     */
    @Override
    public void initialize(URL url, ResourceBundle rb) {
        
        RequiredFieldValidator validator = new RequiredFieldValidator();
        RequiredFieldValidator validator2 = new RequiredFieldValidator();
        RequiredFieldValidator validator3 = new RequiredFieldValidator();
        Tan.getValidators().add(validator);
        pass1.getValidators().add(validator2);
        pass2.getValidators().add(validator3);
        validator.setMessage("Bitte Tan eingeben");
        validator2.setMessage("Bitte Passwort eingeben");       
        validator3.setMessage("Bitte Passwort wiederholen");
        Tan.focusedProperty().addListener(new ChangeListener<Boolean>(){
        
            @Override
            public void changed(ObservableValue<? extends java.lang.Boolean> observable, java.lang.Boolean oldValue, java.lang.Boolean newValue) {
                if(!newValue){
                    Tan.validate();
                     
      
            }               
            }

           
        
        });
        pass1.focusedProperty().addListener(new ChangeListener<Boolean>(){
        @Override
            public void changed(ObservableValue<? extends java.lang.Boolean> observable, java.lang.Boolean oldValue, java.lang.Boolean newValue) {
                if(!newValue){
                   pass1.validate(); 
      
            }               
            }
        
        });
        pass2.focusedProperty().addListener(new ChangeListener<Boolean>(){
        @Override
            public void changed(ObservableValue<? extends java.lang.Boolean> observable, java.lang.Boolean oldValue, java.lang.Boolean newValue) {
                if(!newValue){
                   pass2.validate(); 
                if (pass1.getText().equals(pass2.getText())) {
            nachricht.setText("Passwörter stimmen überein");
            nachricht.setTextFill(Color.rgb(21, 117, 84));
        } else {
            nachricht.setText("Passwörter stimmen nicht überein");
            nachricht.setTextFill(Color.rgb(210, 39, 30));
            
        }
        
    }
      
            }               
            
        
        });
        
        
    }  
    
     
    
}
 
Passende Stellenanzeigen aus deiner Region:

Neue Themen

Oben