Microsoft Visual C# Express 2008
Fermé
Nabil78190
Messages postés
2
Date d'inscription
vendredi 31 juillet 2009
Statut
Membre
Dernière intervention
19 août 2009
-
31 juil. 2009 à 22:29
chuka Messages postés 965 Date d'inscription samedi 11 octobre 2008 Statut Membre Dernière intervention 29 juillet 2010 - 2 août 2009 à 18:27
chuka Messages postés 965 Date d'inscription samedi 11 octobre 2008 Statut Membre Dernière intervention 29 juillet 2010 - 2 août 2009 à 18:27
A voir également:
- Microsoft Visual C# Express 2008
- Microsoft office - Guide
- Cette technique secrète permet d'avoir Windows et Microsoft Office gratuitement et à vie - Accueil - Bureautique
- Microsoft visual c++ runtime - Guide
- Installer windows 10 sans compte microsoft - Guide
- Microsoft store download - Guide
3 réponses
chuka
Messages postés
965
Date d'inscription
samedi 11 octobre 2008
Statut
Membre
Dernière intervention
29 juillet 2010
378
31 juil. 2009 à 23:36
31 juil. 2009 à 23:36
Salut,
tu as l'exemple de l'utilisation d'une progress bar.
En fait c'est un thread (le backgroundWorker) qui effectue la fonction bwk_DoWork, et a chaque tour dans la boucle déclenche l'evenement pour la progress bar, qui affiche ce que tu veux!!
@+
tu as l'exemple de l'utilisation d'une progress bar.
En fait c'est un thread (le backgroundWorker) qui effectue la fonction bwk_DoWork, et a chaque tour dans la boucle déclenche l'evenement pour la progress bar, qui affiche ce que tu veux!!
public partial class Form1 : Form { BackgroundWorker bwk = new BackgroundWorker(); public Form1() { InitializeComponent(); bwk.WorkerReportsProgress = true; bwk.DoWork += new DoWorkEventHandler (bwk_DoWork); bwk.ProgressChanged += new ProgressChangedEventHandler(sender); bwk.RunWorkerCompleted+= new RunWorkerCompletedEventHandler (fin); bwk.RunWorkerAsync(); } private void sender(object s, ProgressChangedEventArgs e) { progressBar1.Value = e.ProgressPercentage; label1.Text = e.ProgressPercentage.ToString(); } private void bwk_DoWork(object sen,DoWorkEventArgs e) { for (int i = 0; i < 100; i++) { bwk.ReportProgress(i); Thread.Sleep(200); } } private void fin(object s, RunWorkerCompletedEventArgs e) { this.Close(); } }
@+
chuka
Messages postés
965
Date d'inscription
samedi 11 octobre 2008
Statut
Membre
Dernière intervention
29 juillet 2010
378
2 août 2009 à 18:27
2 août 2009 à 18:27
Salut,
En fait, la progress bar est generalement utliser quand une action est en train d'etre executer en tache de fond(afin de savoir où en est la fonction appelée)
Ici, la fonction appelée est private void bwk_DoWork(object sen,DoWorkEventArgs e)
j'utilise un backgroundWorker afin que la tache à effectuer(bwk_DoWork) soit effectuée dans un thread séparé.
Un événement que peut généré le backgroundWorker est :ProgressChanged.
Il faut donc rattacher à un delegate cet evenement, en lui indiquant la fonction a executer quand l'evenement est declenché.(dans l'exemple la fonction sender)
Celle-ci recupere notament l'argument ProgressChangedEventArgs, qui contient l'attribut ProgressPercentage.
ProgressPercentage est passé lors du declenchement de l'evenement par le BackgroundWorker:bwk.ReportProgress(i); (i=ProgressPercentage)
J'espere ca pourra t'aider!!
@+
En fait, la progress bar est generalement utliser quand une action est en train d'etre executer en tache de fond(afin de savoir où en est la fonction appelée)
Ici, la fonction appelée est private void bwk_DoWork(object sen,DoWorkEventArgs e)
j'utilise un backgroundWorker afin que la tache à effectuer(bwk_DoWork) soit effectuée dans un thread séparé.
Un événement que peut généré le backgroundWorker est :ProgressChanged.
Il faut donc rattacher à un delegate cet evenement, en lui indiquant la fonction a executer quand l'evenement est declenché.(dans l'exemple la fonction sender)
Celle-ci recupere notament l'argument ProgressChangedEventArgs, qui contient l'attribut ProgressPercentage.
ProgressPercentage est passé lors du declenchement de l'evenement par le BackgroundWorker:bwk.ReportProgress(i); (i=ProgressPercentage)
J'espere ca pourra t'aider!!
@+