이미지를 로드한 후 다른 이미지를 표시하려면 JavaFX 를 사용하십시오.
개요
JavaFX로 처리를 시작한 후 불러오는 그림 보이기
샘플 프로그램은 처리가 끝난 후 처리 결과를 나타내는 다른 이미지를 보여 줍니다.
↑는 버튼을 눌러 처리를 시작하고 3초 후 처리가 끝나 처리 결과가 성공한 샘플이다.
나는 어떤 항목을 참고했지만 그것을 잊어버려서 예전과 찾는 데 많은 시간이 걸렸기 때문에 적어 놓았다.
코드를 모두 GitHub에 놓으세요.
컨디션
설명
버튼을 누르면 로드 이미지(회전된 이미지)가 먼저 표시됩니다.
SampleController.java// set loading image
this.image.setImage(new Image(getClass().getResourceAsStream("/images/loader.gif")));
이후 처리를 시작한다(이번에는 3초를 기다리는 처리).
SampleController.javaThread t = new Thread(() -> {
try {
// wait 3 seconds
Thread.sleep(3000);
} catch (InterruptedException e) {
e.printStackTrace();
}
...
처리가 끝난 후의 처리(결과를 나타내는 파란색 코일 이미지의 표시)를 다시 씁니다.
SampleController.java...
Platform.runLater(() -> {
// after finishing some processes
// set result image
this.image.setImage(new Image(getClass().getResourceAsStream("/images/maru.png")));
});
});
주의
단서를 사용했기 때문에 처리에 따라 예외가 발생할 수 있다
적당히 처리하시오.
Reference
이 문제에 관하여(이미지를 로드한 후 다른 이미지를 표시하려면 JavaFX 를 사용하십시오.), 우리는 이곳에서 더 많은 자료를 발견하고 링크를 클릭하여 보았다
https://qiita.com/s1r/items/7fb42ec21c537609d22b
텍스트를 자유롭게 공유하거나 복사할 수 있습니다.하지만 이 문서의 URL은 참조 URL로 남겨 두십시오.
우수한 개발자 콘텐츠 발견에 전념
(Collection and Share based on the CC Protocol.)
// set loading image
this.image.setImage(new Image(getClass().getResourceAsStream("/images/loader.gif")));
Thread t = new Thread(() -> {
try {
// wait 3 seconds
Thread.sleep(3000);
} catch (InterruptedException e) {
e.printStackTrace();
}
...
...
Platform.runLater(() -> {
// after finishing some processes
// set result image
this.image.setImage(new Image(getClass().getResourceAsStream("/images/maru.png")));
});
});
단서를 사용했기 때문에 처리에 따라 예외가 발생할 수 있다
적당히 처리하시오.
Reference
이 문제에 관하여(이미지를 로드한 후 다른 이미지를 표시하려면 JavaFX 를 사용하십시오.), 우리는 이곳에서 더 많은 자료를 발견하고 링크를 클릭하여 보았다 https://qiita.com/s1r/items/7fb42ec21c537609d22b텍스트를 자유롭게 공유하거나 복사할 수 있습니다.하지만 이 문서의 URL은 참조 URL로 남겨 두십시오.
우수한 개발자 콘텐츠 발견에 전념 (Collection and Share based on the CC Protocol.)