0
나는이 GUI가 화면 상단에서 떨어지는 곳에서 만들고이 단어를 생성자에서 다음과 같은 코드를 사용하여 100 밀리 초마다 한 단위 씩 이동합니다. . 그러나 프로그램을 실행하면 처음에는 화면의 처음이 아니라 400이라는 단어가 나타납니다. 나는 연속적인 시간에 y 값을 업데이트 할 수있는 특정 메소드가 있다고 가정한다. 감사!떨어지는 단어가 예상 결과를 제공하지 않음
while(y <= 400){
y++;
repaint();
try {
TimeUnit.MILLISECONDS.sleep(100);
} catch (InterruptedException ex) {
Logger.getLogger(Painting.class.getName()).log(Level.SEVERE, null, ex);
}
}
를? 그것은 귀하의 발췌 문장에서 일종의 실종입니다. – usr2564301
나는 y = 20으로 시작했는데 그것은 임의적이다. – user19164
_ EDT에서 잠을 자지 않는다; _do_ [* 동시 실행 *] (http://docs.oracle.com/javase/tutorial/uiswing/concurrency/) 및 [* 스윙 타이머 사용 방법 *] (http://docs.oracle.com/ javase/tutorial/uiswing/misc/timer.html). – trashgod