Brak odswiezania stanu JprogressBar

0

Witam, pisze programik w javie z pomoca Netbeansa tworze w nim GUI, no i postanowilem zastosowac dla zoobrazowania dzialania programu JprogressBara, no i mam taka o to funkcje...

private void sync_buttonMousePressed(java.awt.event.MouseEvent evt) {                                         
 {
    try{
    int i = 0;
    byte[] bytesIn = new byte[1024];
    FileInputStream in;
    File f = new File("j:\\cd2.avi");
    int size = (int)f.length();    
    in = new FileInputStream("j:\\cd2.avi");
    jProgressBar1.setMaximum(size);        
    BufferedOutputStream out = new BufferedOutputStream(polaczenie.put("ccc"));
    int counter = 0;
    
      while(true) {

        int bytes =in.read(bytesIn);

        if (bytes < 0)

          break;

        out.write(bytesIn, 0, bytes);

        counter += bytes;
        jProgressBar1.setValue(ftp.ProgressValue); 
        int proc= (int) Math.round(jProgressBar1.getPercentComplete() * 100);

        jProgressBar1.setString(proc + " %");
      

      }

      out.close();

      in.close();
      //return true;
    
    
    }
 catch(Exception c)
 {
     System.out.println("WYJATEK");// TODO add your handling code here:
 }
 }
}  

Jednakze jprogressbar nie jest odswiezany i paska postepu nie widac :(, ale gdy przerwe w ktoryms momencie dzialanie tej funkcji aktualny stan pozostanie.... Dlaczego JprogressBar1 nie jest odswiezany na biezaco ??

0

jProgressBar1.setValue(ftp.ProgressValue);

oczywiscie powinno byc tam jProgressBar1.setValue(counter); ale to nie rozwiazuje problemu...

0

Musisz w osobnym wątku to robić imho, ew. spróbuj po każdej zmianie wartości paska wymusić odmalowanie metodą repaint()...

1 użytkowników online, w tym zalogowanych: 0, gości: 1