Ответ JavaFx на SwingUtilities.invokeLater
Поэтому я знаю, что метод обновления графического интерфейса пользователя JavaFx при использовании потока называется Task, но работает ли код аналогичным образом или есть какие-либо различия. позвольте мне привести вам пример свинга:
Другой класс вне графического интерфейса, который работает как поток
public void run(){
while (socket.isConnected()) {
String x = input.next();
System.out.println(x);
mg.updateChat(x)
}
}
Внутри реального графического интерфейса
public void updateChat(final String input){
SwingUtilities.invokeLater(new Runnable() {
@Override
public void run() {
txtChat.setText(input);
}
});
}
Работает ли Task точно так же? Или есть различия, и если есть, как бы вы изменили этот код для работы в проекте JavaFx?
1 ответ
Решение
Вы ищете аналоги SwingUtil.invokeLater в JavaFX. Если да, то это:
Platform.runLater(java.lang.Runnable runnable)