Я делаю какую-то программу, в которой у меня есть поле ввода и кнопка показа результата (SRB). Когда я помещаю некоторые данные в это поле ввода и нажимаю SRB, я хочу вызвать всплывающее окно с некоторым результатом.
Например:
, если я поставлю 1-5 в поле и нажмите SRB, я хочу вызвать всплывающее окно с текстом «Hello»
, если я введу 6-10 в поле и нажмите SRB, я хочу вызвать всплывающее окно с текстом » Пока "
, если я введу" chel "в поле и нажму SRB, я хочу вызвать всплывающее окно с текстом" Some Stuff "
Поэтому я хочу вызвать одно всплывающее окно, но заставить его отображать разные результаты.
Как я могу это сделать?
Здесь я попытался сделать это, вызывая разные всплывающие окна. Но он выключился, как я поставил 1 - он вызывает popUp.f xml, который я не хочу для чисел.
Вот мой контроллер
public class FirstQuestionController {
@FXML
private ResourceBundle resources;
@FXML
private URL location;
@FXML
private TextField answerField;
@FXML
private Button nextButton;
@FXML
void initialize() {
nextButton.setOnAction(event->{
Calculations calculations = new Calculations();
String answer = answerField.getText().trim();
if (answer.contains("chel")) {
calculations.ageResults(answer);
Stage stage = new Stage();
Parent root = null;
try {
root = FXMLLoader.load(getClass().getResource("/sample/popUp.fxml"));
} catch (IOException e) {
e.printStackTrace();
}
stage.setScene(new Scene(root));
stage.initModality(Modality.APPLICATION_MODAL);
stage.initOwner(nextButton.getScene().getWindow());
stage.showAndWait();
} else {
answer = answerField.getText()
int age = Integer.parseInt(answer);
Stage stage = new Stage();
Parent root = null;
try {
root = FXMLLoader.load(getClass().getResource("/sample/agePopUp.fxml"));
} catch (IOException e) {
e.printStackTrace();
}
stage.setScene(new Scene(root));
stage.initModality(Modality.APPLICATION_MODAL);
stage.initOwner(nextButton.getScene().getWindow());
stage.showAndWait();
}
});
}
}
Класс расчета предназначен для проверки ввода. Если поле ввода имеет 1-5, то оно показывает результат "Hello" et c.