Я не нашел простого решения для моей проблемы.Я хочу использовать TextInputDialog, где вы должны ввести свой пароль пользователя, чтобы сбросить все данные в базе данных.Проблема TextInputDialog заключается в том, что он не маскирует текст, и я не знаю никакой возможности сделать это.
Мой код:
public void buttonReset() {
TextInputDialog dialog = new TextInputDialog("Test");
dialog.setTitle("Alle Daten löschen");
dialog.setHeaderText("Sind Sie sich ganz sicher? Damit werden alle im Programm vorhandenen Daten gelöscht.");
dialog.setContentText("Bitte geben Sie zur Bestätigung ihr Passwort ein:");
Stage stage = (Stage) dialog.getDialogPane().getScene().getWindow();
stage.getIcons().add(new Image("/icons8-blockchain-technology-64.png"));
Optional<String> result = dialog.showAndWait();
if (result.isPresent()){
try {
if (connector.checkUserPassword(userName, result.get())) {
System.out.println("Your name: " + result.get());
} else {
exc.alertWrongPassword();
buttonReset();
}
} catch (TimeoutException te) {
te.printStackTrace();
exc.alertServerNotReached();
}
}
Так есть ли возможностьдиалог или что-то для маскировки TextInput?