Salut a tous,
J'essaie de développer un petit programme qui serait reparti en plusieurs classes, chacune est chargée de récupérer une valeur, le but c'est de pouvoir récupérer ces valeurs sur mon IHM.
Pour ça j'ai développé les classes qui récupèrent les valeurs, en faisant en sorte qu'elles retournent la valeur finale.
ensuite je fais appel a ces méthodes lors du clic d'un bouton dans l'IHM et je dois les afficher dans un champs
Mon souci est que lorsque je clique sur le bouton en question, la valeur est récupérée mais pas plus d'une fois (ou deux) et après le programme plante
J'ai vérifié mon code et j'ai vu que dans mes méthodes, j'avais une while infinie mais que j'arrête par un break a la fin (elle est donc censée s'executer q'une seule fois et couper, ce qui devrait donc me permettre de rappeler la fonction a volonté je pense)
Quelqu'un aurait une idée pour corriger ce problème ?
Voici mon code :
Balance.cs
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28
|
public string fonctionAfficher()
{
//déclaration des objets et variables
....
//Ma boucle
while (true)
{
if (m_ReceiveEvent.WaitOne(50))
{
//code d'initialisation
.....
//On met en place une condition permettant de limiter le nombre de trames
if (((boucleSousEchantAff++) % 30) == 0)
{
//calculs nécessaires pour le poids
....
poidsfinal = poids.ToString(format);//attribution de la valeur sur la variable finale
}
}
}
break;
}
return poidsfinal;
} |
Capteur.cs
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18
|
public string CapteurValeur()
{
//Ma boucle
while (true)
{
//Mon code
....
//attribution de la valeur de retour finale
}
}
break;
}
return ValeurRetour;
} |
Voila mon code pour appeler la fonction "Balance" et la stocker dans un label :
massemesure.Text = Balance.fonctionAfficher();
Et pour "Capteur" :
hauteurmesure.Text = CAPTEUR.CapteurValeur();
Merci d'avance
Partager