간단한 사용자 이름, 비밀번호 및 로그온 버튼이있는 매우 간단한 JavaFX 컨트롤러가 있습니다.JavaFX UI 렌더링 지연 문제
는 내가하고 싶은 것은 사용자가 로그온을 클릭 할 때, 나는 안 함 입력합니다 - 내가 함께 코드에서 할 -이 작동하지만 내 문제는 - 그것은 것으로 보인다
this.gridPanelLogon.setDisabled(true);
과 이 호출 후에 웹 REST 서비스에 대한 JerseyClient 호출을 만든다. 코드가 완료되면 UI를 업데이트하고 gridPanel을 비활성화한다. 하지만 내가 원하는 것은 gridPanel이 먼저 THEN을 호출하지 못하도록하고, UI가 모든 코드가 실행 된 후에 만 업데이트되는 것입니다 (위 코드 행에 맞을 때 올바르지 않습니다).
내가이 사실을 잘못 설명하면 사과 드리 겠지만 더 자세히 설명하는 데 기꺼이 도움을 주지만 어쩌면 누군가가 이것을 경험했기 때문에 이유 또는 해결 방법을 설명하는 데 도움이되기를 바랍니다. gridPanel의 비활성화 된 속성에 변경 리스너를 추가하는 작업을 한 번 시도해 보았습니다. 이는 작동하지 않아 위에서 언급 한 것과 동일한 지연이 발생했습니다.
모든 도움을 주시면 감사하겠습니다. - 감사합니다.
예! 이것을 다시 한번 고맙다. - 나는 이것을 단지 실험하고 있었다! 맞아 - JavaFX 스레드가 하나의 스레드에 있고 클라이언트 -> 서버 호출이 새 스레드를 만들고 JavaFX는이 스레드가 현재 스레드를 완료하기 전에 완료 될 때까지 기다렸습니다. 위의 링크의 솔루션은 [서비스] (http://docs.oracle.com/javafx/2/api/javafx/concurrent/Service.html)입니다. 귀하의 사려 깊고시기 적절한 답변 인 jewelsea에 다시 한번 감사드립니다! – user1589081