Bonjour,
Je voudrais faire en sorte que dans mon application je fais une action (incrémenter une variable par exemple) chaque moitié de seconde par exemple, et que je puisse interrompre cette action répétée.
J?ai déjà réfléchi à une solution avec la fonction Sleep(500) ; mais dés que je met en marche la boucle itérative mon application semble figée et je peu plus interrompre la boucle, sauf en plantant l?application.
Dans mon application CFormulaire est une classe de type formulaire, elle a :
-une donnée de type booléenne fin qui me permet de savoir si le bouton 4 d?interruption a été cliqué ou non,
-et plusieurs méthodes entre autre : OnButton3 qui correspond au bouton 3 de déclenchement de la boucle,
-et OnButton4 qui correspond au bouton 4 d?interruption de la boucle
-et endofthread qui est la méthode par laquelle j?accède à la donnée fin.
Voici le code des trois méthodes :
void CFormulaire::OnButton3()
{
// TODO: Add your control notification handler code here
int i;
this->endofthread(&fin, 0);
while (fin != 1)
{
i=i+1;
Sleep (40);
}
}
void CFormulaire::OnButton4()
{
// TODO: Add your control notification handler code here
this->endofthread(&fin,1);
}
int CFormulaire::endofthread(bool * a, int b)
{
if(b==0) *a =0;
if(b==1) *a =1;
return 1;
}
programmeur mécanicien