SetTimer,KillTimer

Signaler
Messages postés
65
Date d'inscription
jeudi 29 avril 2004
Statut
Membre
Dernière intervention
15 juillet 2004
-
Messages postés
1
Date d'inscription
lundi 19 mai 2008
Statut
Membre
Dernière intervention
19 mai 2008
-
j essayes d utiliser la fonction SEtTimer mais j ai une erreur comme koi la fonction prend 3 paramètre,alors qu en MSDN j ai troub=vé qu il y a 4 paramètrres.
j ai mis alors :
UINT_PTR pTimer=SetTimer(0,3000,bGenerateAuto());
mais ca me donne tjrs une erreu au niveau du 3eme paramètre.
bGenerateAuto() est une fonction que j ai défini et qui rend un booléen.
j ai fait :
pTimer=SetTimer(0,1000,(TIMERPROC)bGenerateAuto());
mais il execute la fonction une seule fois bGenerateAuto() une seulle fois alors qu, il doit la faire chaque 1 seconde!
Merci de m'aider
A voir également:

6 réponses

Messages postés
1536
Date d'inscription
samedi 21 décembre 2002
Statut
Membre
Dernière intervention
24 mai 2009
2
Je n'utilise pas de TIMERPROC : selon l'intervalle de temps ke tu as defini, le timer envoie un message WM_TIMER a ta fenetre, donc a chak reception de ce message, tu executes ta fonction. Et effectivement, tu fais un mauvais appel a cette fonction : SetTimer(hWnd, 1, 1000, NULL);

hWnd = handle de ta fenetre
1 = ID du timer (si tu comptes en gerer plusieur, fais attention a ce param)
1000 = intervalle a lakel le timer enverra le message WM_TIMER
NULL = Pas de TIMERPROC

VOila

++

Alhexman
Messages postés
21042
Date d'inscription
jeudi 23 janvier 2003
Statut
Modérateur
Dernière intervention
21 août 2019
24
UINT m_uiTimer;

void CALLBACK TimerProc(HWND hwnd, UINT uMsg, UINT idEvent, DWORD dwTime)
{
// ton code ici
}

m_uiTimer = SetTimer(hDlg, 1, 3000, TimerProc);

Regarde MSDN pour voir les modif possibles des params de SetTimer.

ciao...
BruNews, Admin CS, MVP Visual C++
Messages postés
65
Date d'inscription
jeudi 29 avril 2004
Statut
Membre
Dernière intervention
15 juillet 2004

Ca me donne tjrs une erreur que SetTimer ne prend pas 4 paramètres.
Messages postés
65
Date d'inscription
jeudi 29 avril 2004
Statut
Membre
Dernière intervention
15 juillet 2004

et quand je fais pTimer=SetTimer(1,3000,TimerProc),il donne aussi une erreur qu il ne peut pas convertir le 3 paramètres..
Messages postés
21042
Date d'inscription
jeudi 23 janvier 2003
Statut
Modérateur
Dernière intervention
21 août 2019
24
Quand c'est du MFC on precise, svp.
Fais nous voir ta timerproc, doit etre static si est dans une classe.

ciao...
BruNews, Admin CS, MVP Visual C++
Messages postés
1
Date d'inscription
lundi 19 mai 2008
Statut
Membre
Dernière intervention
19 mai 2008

Bonjour à tous!
Je up le sujet!
Alors en fait je rencontre plus ou moins le même problème. Je n'ai pas de fonction timerproc mais une fonction OnTimer(int idTimer) ou jai inséré le code à réaliser.Cette fonction est statique elle utilise les fonctions SetTiner et KillTimer. J'ai beau déclarer ces deux fonctions en static, j'ai une erreur de type illegal call of a non static function CWnd::SetTimer et CWnd::KillTimer...
Pouvez vous m'aider?? Je suis débutante en C++ et la je galère un peu...
Merci d'avance.