JavaFX с использованием инициализированных контроллеров и связанных контроллеров FXML в одном приложении - PullRequest
0 голосов
/ 05 июня 2018

Относительно этого вопроса. Я хотел бы знать, можно ли использовать оба метода для разных контроллеров в одном приложении.

Это если доступ к контроллеру не требуетсявнешне я бы использовал fx: controller, а если бы к нему требовался внешний доступ, я бы использовал метод setController ().

1 Ответ

0 голосов
/ 05 июня 2018

Нет, вы можете получить доступ ко всем методам контроллера, используя любой из методов, при условии, что методы public (или любой допустимый подходящий метод доступа).

Использование метода FXMLLoader::setController() полезно, если в вашем контроллереконструктор по умолчанию.Это описано в сообщении StackOverflow, которое вы упомянули.

Если вы установили класс контроллера с помощью fx:controller, вы можете извлечь экземпляр контроллера с помощью FXMLLoader::getController() и вызвать любой метод, который использует этот контроллерэтот экземпляр.

...