У меня были проблемы с генерацией второго этапа / сцены в моей программе. У меня есть первая сцена / сцена, которая генерируется при запуске, отлично работает с рабочей кнопкой. Он находится в своем собственном классе и выполняется в начале.
Далее в программе у меня есть метод, с которого я надеялся запустить мой следующий этап. Я создал еще один класс ниже для генерации второго этапа и поместил конструктор в этот метод. Когда метод выполняется, сцена создается, но сцена ничего не показывает, только сцена с правильным заголовком. Я пытался добавить простые кнопки, надписи с текстом, но ничего не показывает. Не совсем уверен, в чем может быть причина, но, немного поиграв, я решил попросить вас, ребята, о помощи. Учитывая мои ограниченные знания JavaFX, мне было интересно, вызывает ли первый этап проблемы для второго? Я оставляю это открытым и работающим, я должен закрыть это прежде, чем эта секунда выполняется? Или есть лучший способ создать второй этап, не создавая совершенно новый класс? Возможно ли создание класса SecondScene?
Дайте мне знать, спасибо!
РЕДАКТИРОВАТЬ: теперь я добавил обработчик исключений во время выполнения, и он вызывает исключение во время выполнения при создании этого класса. Я все еще немного новичок в Java, означает ли это, что проблема заключается в классе, который я создал? Или это может быть что-то ранее в коде? Мне все еще не удалось заставить простой класс эффективно создавать внутри этой программы, поэтому я не могу создать здесь минимальный уровень функциональности, но, по мнению других людей, код работает, когда он сам по себе.
public SecondScene() {
Thread t = new Thread(new adminThread());
t.setUncaughtExceptionHandler(new Thread.UncaughtExceptionHandler() {
public void uncaughtException(Thread t, Throwable e) {
System.out.println(t + " throws exception: " + e);
}
});
// this will call run() function
t.start();
Text textOutput = new Text(textToDisplay);
BorderPane borderPane = new BorderPane(textOutput);
Scene secondScene = new Scene(borderPane, 400, 600);
// New window (Stage)
Stage secondWindow = new Stage();
secondWindow.setTitle("Second Window");
secondWindow.setScene(secondScene);
secondWindow.show();
}
public void setRunningText(String text){
this.textToDisplay = text;
}
}
класс adminThread реализует Runnable {
public void run() {
throw new RuntimeException();
}
}