진행하기 전에 JavaFX 응용 프로그램을 다시 칠하도록 할 수있는 방법이 있습니까? 스윙 패널의 페인트 (그래픽 g) 방법과 비슷합니다 (키워드가 잘못되었을 수도 있습니다).JavaFX에서 즉시 페인트 강제 적용
다음 예제를 참조하십시오. 컴퓨터 플레이어에 필요한 AI와 함께 TicTacToe 응용 프로그램을 작성합니다. 당신은 듀크 컴퓨터 플레이어를 보여줄 수있는 능력을 원합니다. 어쩌면 당신은 컴퓨터를 돌리는 사이에 2 초의 일시 정지를 넣어서 인생과 비슷한 효과를 줄 수 있습니다. '이동'버튼을 누르면 반응이 크게 멈추고 (컴퓨터가 '결정'하기 위해 가짜 일시 중지로 9 회전하는 데 걸리는 시간) 갑자기 앱 시각이 완료된 상태로 업데이트됩니다. 게임의 상태.
일단 응용 프로그램의 스레드에서 처리가 완료되면 JavaFX가 다시 표시되는 것처럼 보입니까? 나는 여기서 확실하지 않다.
감사합니다.
Swing과 JavaFX는 GUI 구성 요소에서 비슷한 스레딩 모델을 가지고 있다고 생각합니다. Swing의 JPanel, JavaFx Button은 메인 스레드에서만 업데이트해야합니다. 위의 예제에서 계산을 수행하는 별도의 스레드 (예 : 이동)를 작성한 다음 Swing.invokeLater 또는 Platform.runLater()를 호출하여 주 스레드에서 GUI를 업데이트하십시오. 이상하게 들릴지 모르지만, 어떤 스레드가 GUI를 업데이트 할 수있게되면 발생하는 문제를 우회하는 방법으로이 방법을 사용합니다. – Kerry