IdentifiantMot de passe
Loading...
Mot de passe oubli� ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les r�ponses en temps r�el, voter pour les messages, poser vos propres questions et recevoir la newsletter

Visual C++ Discussion :

Probl�me overload TimerProc


Sujet :

Visual C++

  1. #1
    Membre � l'essai
    Profil pro
    Inscrit en
    Octobre 2009
    Messages
    5
    D�tails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Octobre 2009
    Messages : 5
    Par d�faut Probl�me overload TimerProc
    Bonjour � tous.

    Je d�sire faire sous Visual C++ une fonction qui calcule le temps d'appui sur la barre d'espace. J'ai donc eu l'id�e de cr�er un Timer lorsque j'appuie sur la barre d'espace comme ceci :

    Code : S�lectionner tout - Visualiser dans une fen�tre � part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    void CBillardView::OnKeyDown(UINT nChar, UINT nRepCnt, UINT nFlags)
    {
    	CView::OnKeyDown(nChar, nRepCnt, nFlags);
    	if(nChar==0x20)
    	{	
    		UINT_PTR m_timer = SetTimer(1, 2000,(TIMERPROC)TimerProc); // création du timer (2 secondes max)
    	}
    }
     
    void CBillardView::OnKeyUp(UINT nChar, UINT nRepCnt, UINT nFlags)
    {
    	CView::OnKeyUp(nChar, nRepCnt, nFlags);
    	if(nChar==0x20)
    	{
    		KillTimer(1);
    	}
    }
    Soit le timer arrive � 2 secondes, soit il est interrompue lorsque je rel�ve la barre d'espace, auquel cas je souhaiterai r�cup�rer le temps d'appui en milli-secondes via la fonction de CALLBACK :
    Code : S�lectionner tout - Visualiser dans une fen�tre � part
    1
    2
    3
    4
    5
    6
    7
    8
    void CALLBACK TimerProc(HWND hWnd, UINT nMsg, UINT nIDEvent, DWORD dwTime)
    {
    	CString str;
    	float time=dwTime;
    	str.Format(_T("%f"),time);
    	AfxMessageBox(str);
    	KillTimer(hWnd,1);
    }
    Mais seulement il me dit que je ne peux "overload" ma m�thode TimerProc et il voudrait que lors de l'appel du timer je l'appelle avec tous les param�tres n�cessaires .... et c'est l� que je bloque ! Si vous avez des id�es ou quoi que ce soit je suis preneur !
    Merci,
    Staticx83.

  2. #2
    Expert confirm�
    Homme Profil pro
    D�veloppeur informatique
    Inscrit en
    F�vrier 2005
    Messages
    5 507
    D�tails du profil
    Informations personnelles :
    Sexe : Homme
    �ge : 53
    Localisation : France, Val de Marne (�le de France)

    Informations professionnelles :
    Activit� : D�veloppeur informatique
    Secteur : Conseil

    Informations forums :
    Inscription : F�vrier 2005
    Messages : 5 507
    Par d�faut
    A en croire la Doc
    http://msdn.microsoft.com/en-us/libr...07(VS.85).aspx

    Une TimerProc
    c'est
    Code : S�lectionner tout - Visualiser dans une fen�tre � part
    1
    2
    3
    4
    5
    VOID CALLBACK TimerProc(          HWND hwnd,
        UINT uMsg,
        UINT_PTR idEvent,
        DWORD dwTime
    );

Discussions similaires

  1. Probl�me d'overload Java
    Par rami96 dans le forum D�buter avec Java
    R�ponses: 11
    Dernier message: 29/02/2012, 15h09
  2. Probl�me avec les operators overloaded
    Par Kimy_Ire dans le forum C++
    R�ponses: 5
    Dernier message: 26/11/2011, 20h14
  3. Probl�mes avec l'overloading
    Par Nasky dans le forum C++
    R�ponses: 10
    Dernier message: 29/11/2006, 01h06
  4. Probl�me d'installation oracle 8.1.7 sous NT
    Par Anonymous dans le forum Installation
    R�ponses: 7
    Dernier message: 02/08/2002, 14h18
  5. Probl�me avec la m�moire virtuelle
    Par Anonymous dans le forum CORBA
    R�ponses: 13
    Dernier message: 16/04/2002, 16h10

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo