Quote Originariamente inviata da iJim Visualizza il messaggio
Ok, mi spiego meglio, il JPanel fa il download di un file e in base ai bytes ricevuti, voglio mostrare la percentuale, quindi per ogni blocco di byte vorrei aggiornare la label!!
Di base serve un thread a parte, in cui eseguire il codice di networking per il download. Poi di tanto in tanto (secondo la tua logica) fai passare un pezzetto di codice in un run() di Runnable nel Event Dispatch Thread per aggiornare la interfaccia (con il "solito" invokeLater).

Se usi almeno Java 6 invece che gestire "a mano" il thread puoi usare il javax.swing.SwingWorker, che però ha un flusso e ciclo di vita ben particolare, che va capito prima di usarlo.