Page 40 - 3-2
P. 40

나 라즈베리파이관련 소스.


            *******************************MDP_Control****************************
            import java.util.Timer;
            import java.util.TimerTask;
            import java.awt.Frame;


            /*
             *
             MDPControl class


             이 프로젝트의 시작점 함수인 main()            을 정의함
             1.  먼저 MDP_Project   윈도우를 띄운다.
             2. TimeTask   클래스를 상송한 NewScheduleJob          클래스에서 매 10       초 마다 MDP_Project4      윈도우 화
            면이 위에 떠 있는 지 확인한다.
             3.  만약 떠 있다면 10     초를 카운트 한 후 MDP_Project4           화면은 보이지 않게 하고, MDP_Project            화면
            을 보이게 한다.
             *
             */
            public class MDPControl {


               public static void main(String[] args) {
                       MDP_Project.frame.setVisible(true);


                  NewScheduledJob job = new NewScheduledJob();
                  Timer jobScheduler = new Timer(true);
                  //  네번째 화면인지 확인하는 로직을 매 10               초마다 확인한다.
                  jobScheduler.scheduleAtFixedRate(job, 1000, 10000);
                  try {
                     Thread.sleep(20000);
                  } catch(InterruptedException ex) {
                     //
                  }
                  // cancel()  메소드를 호출하지 않는다.
               }
            }


            class NewScheduledJob extends TimerTask {


                       public void run() {
                               if(MDP_Project4.frame4.getState() == Frame.NORMAL)
                               {
            // 10 초를 세고 윈도우 화면을 전환하게 하는 로직을 동작시킨다.
                                            new MyTask(10);
                               }


                                                         - 40 -
   35   36   37   38   39   40   41   42   43   44   45