JProgressBar pr=new JProgressBar(),
然后产生一个线程起调整它的value 就可以了啊
pr.setValue()

解决方案 »

  1.   

    public class ThreadTest implements Runnable {
      private SyncTest_57 st;
      private int x;
      private int y;  public ThreadTest(SyncTest_57 st) {
        this.st = st;
      }  public void run() {
        st.setXY(2);
        //st.setXY(3);
        System.out.println(st.check());
        System.out.println("X=" + st.x + "  Y=" + st.y);
        try {
          Thread.sleep(500);
        }
        catch (InterruptedException e) {}
        for(;;){x++;y++;System.out.println("x="+x+",y="+y);}  } //end run();  // end class Test1;  public static void main(String args[]) {
        SyncTest_57 st57 = new SyncTest_57();    ThreadTest t1 = new ThreadTest(st57);    Thread thread1 = new Thread(t1);
        thread1.start();    ThreadTest t2 = new ThreadTest(st57);
        Thread thread2 = new Thread(t2);
        thread2.start();    ThreadTest t3 = new ThreadTest(st57);
        Thread thread3 = new Thread(t3);
        thread3.start();    ThreadTest t4 = new ThreadTest(st57);
        Thread thread4 = new Thread(t4);
        thread4.start();  }
    }
      

  2.   

    package sctest;public class SyncTest_57 {  //147-57t
       public int x;
       public int y;  //为了方便看到 X,Y的值,我把它改为了PUBLIC,不影响结果!   private synchronized void setX (int i) {x=i;}
       private synchronized void setY (int i) {y=i;}
       public void setXY(int i){setX(i); setY(i);}
       public synchronized boolean check() {return x != y;}
    }
      

  3.   

    两种方法:
    一种是继承Thrand
    一种是扩展Runable