(Résolu) Problème 1: J'essaie d'ajouter une vérification simple à mes 2 TextFields en vérifiant ses valeurs. Cependant, avec ce code ci-dessous, je pense que ce qui se passe est que le try/catch
est appelé comme le programme démarre (que j'ai testé avec le code System.out.println()
), ce qui entraîne toujours une erreur. Comment puis-je faire en sorte que cela ne soit appelé qu'après avoir appuyé sur le bouton 'Finish'
?
(UNSOLVED) Numéro 2: Faisant suite à ma première question, comment puis-je faire de telle sorte que ce soit si mon if
ou mon try/catch
retourne une « erreur », puis en appuyant sur le bouton 'Finish'
ne se termine pas le code?Java - Validation de TextField
code:
Dialog<Pair<String, Integer>> dialog = new Dialog();
dialog.setTitle("Add new values");
dialog.setHeaderText("Please input name and number");
ButtonType finishButton = new ButtonType("Finish", ButtonData.OK_DONE);
dialog.getDialogPane().getButtonTypes().addAll(finishButton, ButtonType.CANCEL);
GridPane grid = new GridPane();
grid.setHgap(10);
grid.setVgap(10);
TextField name = new TextField();
name.setPromptText("Name");
TextField size = new TextField();
number.setPromptText("Number");
grid.add(new Label("Name:"), 0, 1);
grid.add(eventName, 1, 1);
grid.add(new Label("Number:"), 0, 3);
grid.add(eventSize, 1, 3);
dialog.getDialogPane().setContent(grid);
//verification code below
if (eventName.getText() == null || eventName.getText() == "") {
grid.add(new Label("Name is required!"), 0, 0);
}
try {
int size = Integer.parseInt(eventSize.getText());
} catch (NumberFormatException e) {
grid.add(new Label("Size is required!"), 0, 1);
System.out.println("Test failed");
}
C'est le code que je suis en train d'apprendre hors de: Here
Avez-vous le code de vérification dans un 'ActionListener '? Si vous l'ajoutez à un 'ActionListener', et ajoutez cela à un bouton, vous devriez être OK. – DCON
En ce moment, j'ai le bouton qui ouvre cette boîte de dialogue pour implémenter 'EventHander', si c'est ce que vous voulez dire, et vous voulez que je change en ActionListener. Sinon, je n'ai aucune idée de ce que vous voulez dire désolé. –
Yuxie