Questo sito utilizza cookies solo per scopi di autenticazione sul sito e nient'altro. Nessuna informazione personale viene tracciata. Leggi l'informativa sui cookies.
Username: Password: oppure
C# / VB.NET - Progress bar : operazione dopo il caricamento C#
Forum - C# / VB.NET - Progress bar : operazione dopo il caricamento C#

Avatar
xLuk3x (Normal User)
Rookie


Messaggi: 38
Iscritto: 12/06/2008

Segnala al moderatore
Postato alle 12:09
Sabato, 26/07/2008
Questo topic è stato chiuso dal moderatore

Ciao a tutti. Oggi ho appreso la grande tecnica della progress bar.
Però:

quando premo il pulsante, la progress bar si carica e una label mostra un messaggio. Ma avrei bisogno che il messaggio fosse mostrato solo alla fine del caricamento..


Ho usato questo codice:

Codice sorgente - presumibilmente C# / VB.NET

  1. private void button1_Click(object sender, EventArgs e)
  2.         {
  3.             progressBar1.Maximum = 10;
  4.             progressBar1.Minimum = 0;
  5.             progressBar1.Value = 0;
  6.             progressBar1.PerformStep();
  7.             label4.Text = "Operazione Eseguita";
  8.         }



Ho provato ad utilizzare un do...while e un while
per dire che quando la progress bar si sarebbe caricata viene mostrato qualcosa, ma devo aver sbagliato qualcosa.
Qualcuno mi ha anche consigliato un timer, ma non ho la minima idea di come si usa...:rotfl:

PM
Avatar
klez91 (Normal User)
Pro


Messaggi: 117
Iscritto: 04/05/2008

Segnala al moderatore
Postato alle 12:50
Sabato, 26/07/2008
Se nn ho capito male vuoi fare in modo che quando la progressBar raggiunge il suo valore massimo, la label mostra il messaggio "Operazione eseguita" giusto? Beh x fare qst puoi utilizzare qst codice:

Codice sorgente - presumibilmente C# / VB.NET

  1. if (progressBar1.Value == progressBar1.Maximum)
  2. {
  3.         label4.Text = "Operazione eseguita";
  4. }



Io ti consiglio di copiarlo nella parte di codice che utilizzi x aumentare il valore della progressbar, ma va benissimo anche un timer anche se sarebbe un'inutile spreco di risorse x qst genere di operazioni. Ciao:k:

Ultima modifica effettuata da klez91 il 26/07/2008 alle 12:50
PM
Avatar
Il Totem (Admin)
Guru^2


Messaggi: 3635
Iscritto: 24/01/2006

Segnala al moderatore
Postato alle 10:00
Domenica, 27/07/2008
Il codice di klez91 va bene, ma ricordati che deve essere inserito in qualche struttura iterativa, o non avrà effetto.

PM
Avatar
xLuk3x (Normal User)
Rookie


Messaggi: 38
Iscritto: 12/06/2008

Segnala al moderatore
Postato alle 11:15
Domenica, 27/07/2008
Testo quotato

Postato originariamente da Il Totem:

Il codice di klez91 va bene, ma ricordati che deve essere inserito in qualche struttura iterativa, o non avrà effetto.



Un esempio?:(

PM
Avatar
Il Totem (Admin)
Guru^2


Messaggi: 3635
Iscritto: 24/01/2006

Segnala al moderatore
Postato alle 12:03
Lunedì, 28/07/2008
Es.:
Codice sorgente - presumibilmente C# / VB.NET

  1. do
  2. {
  3.   ProgressBar1.PerformStep();
  4.   System.Threading.Thread.Sleep(200);
  5.   if (ProgressBar1.Value == ProgressBar1.Maximum)
  6.   {
  7.     Label1.Text = "Completato!";
  8.     break;
  9.   }
  10. } while (true);


Ma anche in timer. Basta che sia una struttura iterativa.

PM
Avatar
xLuk3x (Normal User)
Rookie


Messaggi: 38
Iscritto: 12/06/2008

Segnala al moderatore
Postato alle 20:18
Martedì, 29/07/2008
Grazie Totem:k:

PM