Acces class a travers un timer

dambeaufort Messages postés 60 Date d'inscription mardi 10 février 2004 Statut Membre Dernière intervention 17 septembre 2004 - 5 mai 2004 à 10:29
ymca2003 Messages postés 2070 Date d'inscription mardi 22 avril 2003 Statut Membre Dernière intervention 3 juillet 2006 - 5 mai 2004 à 12:04
Bonjour,

je viens de creer un timer sous MFC
ce timer devrais m'appeler une fonction d'une classe, le probleme c que ca me dit que m'a fonction n'est pas static; si je la mets static, je perd les info Cedit... de ma fenetre de dialog.
Je m'explique:

j'ai une fenetre de dialog, que je dois mettre a jour regulierement (avancement de progressbar, mise a jour edit box...)
anciennement je n'utilisais pas de timer, mais un while. au bout d'un moment, ma fenetre n'est n'est plus rafraichie, elle devient grise et je ne vois plus rien.
c pourquoi je pensais plutot utilises un timer.
Le probleme est alors que quand j'appelle ma fonction qui gere l'affichage, elle n'est prise en compte que si elle est static, je pert alors les variables membres de la classe:

Merci de m'aider c urgent!!!!!!!

1 réponse

ymca2003 Messages postés 2070 Date d'inscription mardi 22 avril 2003 Statut Membre Dernière intervention 3 juillet 2006 7
5 mai 2004 à 12:04
Bon alors dans ce cas, il faut rajouter la gestion du message WM_TIMER dans le classWizard, ce qui va te rajouter la fonction OnTimer dans ton dialogue.

dans le OnInitDialog, tu crée le timer :
nId : Id du timer gére (au cas ou il yen a plusieurs, our les différencier dans OnTimer).
nTimeOut : cadence
SetTimer(nId, nTimeOut, NULL);

et dans OnTimer tu as accès à TOUS les membres de ton dialog.
0
Rejoignez-nous