У меня есть класс mainscope, который помогает мне с инициализацией других областей. Это стек стека - база для других представлений.
В этом классе у меня есть публичный метод initialize()
, который инициализирует новое представление:
public void initialize(){
FXMLLoader loader = new FXMLLoader();
loader.setLocation(this.getClass().getResource("/gui/scopes/LoadScreen.fxml"));
GridPane gridPane = null;
try {
gridPane = loader.load();
} catch (IOException e) {
e.printStackTrace();
}
LoadScreenController loadScreenController = loader.getController();
loadScreenController.setMainScreenController(this);
loadScreenController.setClient(client);
setScreen(gridPane);
}
Мой следующий вид - это класс, у которого есть метод afterinit()
, и я хочу его автозапустить после инициализации представления. Метод afterInit () создает два потока, поэтому, когда я хочу вызвать его в конце initialize (), новое представление показывает, когда afterInit () останавливает или заканчивает работу. В другом случае, когда я запускаю этот метод из initialize (), у меня возникают проблемы с правильным остановом подпотоков, потому что они запускаются, когда я закрываю окно. Теперь у потоков есть циклы со значением условия <100, и они увеличивают значение от 0 до условия цикла. Поэтому они должны остановиться, когда значение достигнет 100 или когда я закрою окно / представление. Как мне это сделать? </p>