0
이 문제는 이전에 다뤘던 것 같지만 실제로 문제를 해결 한 답을 찾지 못했습니다. 이 코드의 발췌에서 버튼 클릭 (lblMessage의 텍스트 설정)에 대한 반응을 표시하고 잠시 기다린 다음 다른 이미지를 표시하려고합니다.UI를 차단하지 않고 지정된 시간 동안 Java를 일시 중지하는 방법은 무엇입니까?
"wait 1000ms"로 표시된 섹션에서 나는 경과 된 시스템 시간을 계산할뿐만 아니라 Thread.sleep()을 시도했다. 그러나 두 경우 모두 lblMessage는 대기 시간 후에 만 채워집니다.
나는 Timer를 보았지만 구문을 사용하는 방법 (특히 입력해야하는 작업)을 파악할 수 없습니다.
미리 도움 주셔서 감사합니다.
public void answerButtonClicked(ActionEvent event) {
endTime = System.nanoTime();
elapsedTime = (endTime - startTime);
String answerTime = String.format("%.2f", (elapsedTime/1000000000));
Button btnAnswer = (Button)event.getSource();
String answer = btnAnswer.getId();
String correctAnswer = mpScenes.get(model.getNextScene(round-1));
if (answer.equals(correctAnswer)) {
lblMessage.setText("Richtig (" + answerTime + "s)");
} else {
lblMessage.setText("Falsch (" + answerTime + "s)");
}
**--<wait 1000 ms>--**
if (round < numberOfRounds) {
round++;
setNewMainImage(round);
} else {
endOfGame();
}
}
많은 감사합니다. – Cord