FX Not on FX application thread; currentThread = Thread - 7 에러 해결
JavaFX + Scenebuilder 를 사용해여 개발하던 중
FX Not on FX application thread; currentThread = Thread - 7 에러가 발생했다.
Thread 를 사용해서 fxml의 UI 를 변경할때 발생한 에러인데
JavaFX에서 JavaFX Application Thread가 UI를 담당하는데 Thread에서 UI를 변경하게 되면
Exception in thread "Thread-7" java.lang.IllegalStateException: FX Not on FX application thread; currentThread = Thread - 7
에러가 발생한다.
이를 해결하는 방법으로는
Platform.runLater 메소드를 사용해서 해결할 수 있다.
@FXML private Label label;
Runnable runnable = new Runnable(){
@Override
public void run(){
Platform.runLater(() -> label.setText("test") );
}
}
'JavaFX' 카테고리의 다른 글
[JavaFX] 자바FX + Hibernate - ids for this class must be manually assigned before calling save() 에러 (0) | 2020.06.19 |
---|---|
JavaFX + Hibernate 제네릭 CRUD 인터페이스 구현하기 (0) | 2020.06.18 |
[JavaFX] 자바FX Task ProgressBar 팝업 만들기 (0) | 2020.05.27 |
[JavaFX] 자바fx background image styleClass로 변경 (0) | 2020.05.18 |
[JavaFX] 자바fx 팝업창 모달로 부모창 선택 못하게 initOwner, initModality, Modality (1) | 2020.05.15 |