Visualizzazione dei risultati da 1 a 3 su 3
  1. #1

    JProgressBar associata a invio file

    ciao a tutti ,
    ho un client con GUI che invia un file al server. come faccio ad associare una JProgressBar presente sulla GUI del client all'invio del file al server (ovvero che la barra avanza in base all'invio del file) ?

  2. #2
    Utente di HTML.it L'avatar di andbin
    Registrato dal
    Jan 2006
    residenza
    Italy
    Messaggi
    18,284
    Quote Originariamente inviata da Danix Danilovic Visualizza il messaggio
    ciao a tutti ,
    ho un client con GUI che invia un file al server. come faccio ad associare una JProgressBar presente sulla GUI del client all'invio del file al server (ovvero che la barra avanza in base all'invio del file) ?
    Innanzitutto si presuppone che tu abbia fatto la gestione dell'invio in un thread a parte dedicato. Perché se la fai nel contesto del Event Dispatch Thread bloccheresti tutta la interfaccia utente.
    Poi come mostrare l'avanzamento si può fare in più modi. Sicuramente con un semplice JProgressBar messo da qualche parte nella tua interfaccia. Ma si può anche usare javax.swing.ProgressMonitor che è sostanzialmente una dialog box con una logica dedicata alla visualizzazione del progresso di "qualcosa".

    E nel caso del multi-threading bisogna ricordarsi sempre che in un thread separato (non il EDT) non si deve accedere mai direttamente alla interfaccia utente (salvo pochi casi documentati). Quindi a meno di usare lo SwingWorker, in genere basta usare il "solito" SwingUtilities.invokeLater per far eseguire il codice di update della progressbar nel EDT.
    Andrea, andbin.devSenior Java developerSCJP 5 (91%) • SCWCD 5 (94%)
    java.util.function Interfaces Cheat SheetJava Versions Cheat Sheet

  3. #3
    confermo l'utilizzo dei thread per inviare i file. con java però sono agli inizi: cos'è SwingUtilities.invokeLater?

Tag per questa discussione

Permessi di invio

  • Non puoi inserire discussioni
  • Non puoi inserire repliche
  • Non puoi inserire allegati
  • Non puoi modificare i tuoi messaggi
  •  
Powered by vBulletin® Version 4.2.1
Copyright © 2025 vBulletin Solutions, Inc. All rights reserved.