ephilas
Messages postés21Date d'inscriptionmardi 3 août 2004StatutMembreDernière intervention14 février 2007
-
23 févr. 2005 à 18:52
ephilas
Messages postés21Date d'inscriptionmardi 3 août 2004StatutMembreDernière intervention14 février 2007
-
23 févr. 2005 à 22:04
Bonjour,
Alors voilà, dans mon programme lorsque je clique sur le bouton Telecharger le texte du label devient "Telechargement en cours" et lorsque que je clique sur le bouton Pause/Reprendre il devient "Telechargement en pause" mais lorsque je reclique sur ce meme bouton le texte ne change pas alors qu'il devrait devenir "Telechargement en cours".
Voilà ce que j'ai ecris au debut de ma fonction Telecharger :
label3.Text="Téléchargement en cours";
label3.ForeColor = System.Drawing.Color.Red;
Mais si à la place j'ecris :
MessageBox.Show("Telechargement");
label3.Text="Téléchargement en cours";
label3.ForeColor = System.Drawing.Color.Red;
alors la message box s'affiche et le label change bien de texte !? Je n'y comprends rien.
Avez vous une idée svp ? (Promis apres j'arrete de vous emmerder ! )
cs_Bidou
Messages postés5487Date d'inscriptiondimanche 4 août 2002StatutMembreDernière intervention20 juin 201361 23 févr. 2005 à 20:56
De rien !
En fait, un label et tout autre Control d'ailleurs se rafraichit "quand il a le temps". Comme la méthode Refresh appartient à la classe UserControl, on peut sans autre l'appeler pour n'importe quel contrôle (puisqu'ils dérivent tous de UserControl), pour forcer le refresh dudit contrôle...
On peut aussi agir à un niveau plus élevé, en appelant Application.DoEvents() pour traiter tous les messages qui sont encore dans la "queue".
On s'aperçoit facilement du résultat avec le petite morceau de code suivant :