2013-11-10 4 views
-1

두 레이블 사이에 지연이 있기를 원합니다. 아이디어 있니? 아래 예를 통해 내가 필요한 것을보다 쉽게 ​​얻을 수 있습니다. 당신이Java에서 2 초 지연

//wait for 2 seconds 
jLabel1.setIcon(leftIcon); 
if (e.getKeyCode() == KeyEvent.VK_LEFT && k==0) 
{ 
    //wait for 2 seconds 
    jLabel2.setIcon(leftIcon); 
    k++; 
} 
else if (e.getKeyCode() == KeyEvent.VK_UP && k==1) 
{ 
    System.out.print("\nup up up\n"); 
    //wait for 2 seconds 
    jLabe3.setIcon(leftIcon); 
    k++; 
} 

구체적으로 감사합니다

그래서, 내가 프레임을 갖고 싶어하고, 2 초마다 우리가 다른 image.At가 시작 볼, 당신은 두 번째의 첫 번째 이미지를 볼 수 있습니다 . 첫 번째 이미지가 닫히고 2 초 후에 다른 이미지가 열립니다.

답변

1

스윙 시간 지연의 경우 스윙 타이머를 사용하십시오. 튜토리얼 here에 대한 링크를 찾을 수 있습니다. Timer의 ActionListener에서 JLabel의 아이콘을 설정하고 카운터를 증가시킬 수 있습니다. 여담으로

이 나에게 명확하지 않다 :

내가 두 개의 레이블

당신은 할 수 없습니다 "지연의"구성 요소 사이의 지연 시간을 갖고 싶어. JLabel에서 ImageIcon의 표시를 지연 시키길 원한다고 가정합니다. 맞습니까?

+0

오해를 드려 죄송합니다. 프레임을 갖고 싶습니다. 매 2 초마다 다른 이미지가 나타납니다. 시작하면 1 초 동안 첫 번째 이미지를 볼 수 있습니다. 첫 번째 이미지가 닫히면, 2 초 후에 또 다른 이미지를 열어 .. 더 나아 졌어? – user2933161

+0

@ user2933161 : 원래 질문을이 정보로 업데이트하십시오. 더 많은 정보를 제공하는 것도 고려하십시오. 하지만 네, 해결책은 스윙 타이머를 사용하는 것입니다. 링크를 확인하십시오. –