2013-11-04 3 views
0

타이머를 사용하여 X부터 0까지 카운트 다운하고 폼에있는 jProgressBar를 증가 시키려면 어떻게해야합니까?자바 - 타이머를 사용하여 앱이 종료 될 때까지 카운트 다운

계획이 필요한 일부 파일이 설치되어 있는지 확인하는 프로그램이 시작됩니다. 그렇지 않은 경우 프로그램에서 해당 파일을 설치하려고 시도합니다. 이것이 실패하면, 메소드는 호출하는 메소드에 그렇게 알려줍니다. 이러한 코드가 발견되면 사용자는 프로그램이 파일을 설치할 수 없다는 통지를 받으면 "프로그램을 관리 (uac) 또는 루트 (sudo) 권한으로 시작했는지 확인하십시오"라는 메시지와 함께 프로그램이 종료됩니다. . "

Visual Basic 에서처럼 카운트 다운 타이머를 사용하고 싶습니다.

도움을 주시면 감사하겠습니다.

미리 감사드립니다.

+0

아무 것도 시도해 보지 않으셨습니까? 자바의 Timer 객체를 살펴보십시오. – Joel

답변

0

스레드 : 당신은 몇 가지 코드를 표시하거나 더 나은 귀하의 질문에 비트를 명확히 경우 http://docs.oracle.com/javase/6/docs/api/java/lang/Thread.html

내가 간격도 쉬운 옵션은 서로를 만드는 것입니다 당신이 시간에 JProgressBar가를 업데이트 할 소화 것과 더 나은 도움이되지만를 제공 할 수 있습니다 실.

Thread t = new Thread(new Runnable(){ 
    public void run() 
    { 
    // Here you can use Timer or Thread sleep 1s up to X seconds 
    // and on each iteration increment your jProgressBar. 
    // TODO: Your code... 

    return; // To kill the thread 
    } 
}); 

t.start(); 
+0

좋아, 좀 더 명확하게하겠습니다. 프로그램이 오류를 감지하면 종료됩니다. 하지만 사용자에게 실제로 일어나는 일을 인식 할 수있는 시간을주고 싶습니다. 그래서 무엇이 잘못 됐는지 이해하지 못하고 무엇이 잘못되었는지 궁금하지 않고 애플리케이션을 제거하기 만하면됩니다. 그렇게하려면 타이머 나 비슷한 것을 사용하여 진행률 막대를 천천히 2 단계 씩 증가 시켜서 사용자가 잘못된 것을 볼 수있는 시간을 갖도록해야합니다. 진행률 표시 줄이 100 %에 도달하면 프로그램이 닫힙니다. VB에서 왔는데 VB에서 그런 식으로 정렬하는 타이머를 사용했습니다. – SimonC

+0

- 매초마다 진행률 막대를 5 번씩 증가 시키려면 타이머를 말하는 것과 같습니다. 진행률 표시 줄이 매초 5 단위로 채워 지므로 20 초 후에 프로그램이 종료됩니다. – SimonC