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

MFC Discussion :

Demande d'aide sur une action sur un bouton


Sujet :

MFC

  1. #1
    Membre régulier
    Profil pro
    Inscrit en
    Mars 2007
    Messages
    227
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mars 2007
    Messages : 227
    Points : 88
    Points
    88
    Par défaut Demande d'aide sur une action sur un bouton
    Bonjour à tous,

    J'ai un petit problème, je m'explique:

    J'ai créer un bouton Start\Stop, puis la methode OnBnClickedBtnStartStop().

    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
    18
    19
    20
    21
    22
    23
     
    void CCourse::OnBnClickedBtnStartStop()
    {
    //Si la course n'est pas encore commencée
    	if(!started)
    	{
    		//Changement d'image du bouton (Drapeau Cadrillé)
    		m_pBtnStartStop.SetBitmap(hBmpStop);
     
    		//Passage en mode Commencée(Mode Course)
    		started=true;
     
    		...
     
    	}
    	else
    	{
    		//Changement d'image du bouton (Drapeau Vert)
    		m_pBtnStartStop.SetBitmap(hBmpStart);
    		//Passge en mode "Finie" (Mode fin Course)
    		started=false;
    	}
    }
    Jusque là tout va bien!

    cependant je souhaiterais dans la partie if(!started) mettre un boucle de type:" tant que nous avons pas réappuyer sur le bouton! executer ce qu'il y'a dans la boucle sinon sortir de la fonction"

    Je ne vois pas comment faire j'avais penser à quelque chose du type:

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    While(!OnBnClickedBtnStartStop())
              { ... }
    Mais cependant la méthode OnBnClickedBtnStartStop() est du type void

    Y aurait il quelqu'un pour me venir en aide?

    Merci d'avance
    Kemanke

  2. #2
    Membre averti
    Profil pro
    Inscrit en
    Mars 2004
    Messages
    391
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mars 2004
    Messages : 391
    Points : 347
    Points
    347
    Par défaut
    bonjour

    tu peux declarer un timer n avec ta fenetre.
    Puis en fonction de l'appui sur le bouton activer ou fermer le timer et dans la fonction du timer faire la tache que tu veux repeter.

    VS6 ou VS2005?
    Just si tu as besoin d'aide pour implmenter le timer.

    Cordialement

  3. #3
    Membre régulier
    Profil pro
    Inscrit en
    Mars 2007
    Messages
    227
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mars 2007
    Messages : 227
    Points : 88
    Points
    88
    Par défaut
    vS2005

  4. #4
    Membre averti
    Profil pro
    Inscrit en
    Mars 2004
    Messages
    391
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mars 2004
    Messages : 391
    Points : 347
    Points
    347
    Par défaut
    Bonjour

    Dans les ressources, tu selectionne ta dialogue et tu ajout le message WM_TIMER

    dans la fonction Ontimer() qu'il a cree tu ajoutes

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
     
    switch (nIDEvent)
    	{
    	case 1 :	//code que tu veux repeter
                 break;
    }
    a l'endroit ou tu clic sur ton bouton

    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
    18
    19
     
    void CCourse::OnBnClickedBtnStartStop()
    {
    //Si la course n'est pas encore commencée
              started = started? 0 : 1;
    	if(started)
    	{
     
    		//Passage en mode Commencée(Mode Course)
    		SetTimer(1,100,NULL); //numero du timer - temps en ms
     
     
     
    	}
    	else
    	{
                       KillTimer(1);
               	}
    }
    cordialement

  5. #5
    Membre régulier
    Profil pro
    Inscrit en
    Mars 2007
    Messages
    227
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mars 2007
    Messages : 227
    Points : 88
    Points
    88
    Par défaut
    Merci à toi Ricky

    Bon courage pour la suite!
    Cordialement
    Kemanke

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. detecter une action sur une page jsp interprétée
    Par scolopendra dans le forum Servlets/JSP
    Réponses: 5
    Dernier message: 11/02/2009, 14h47
  2. [2.3] Action sur double-click sur une série
    Par Robiwan59 dans le forum BIRT
    Réponses: 1
    Dernier message: 19/08/2008, 11h43
  3. realiser une action sur une seule colonne
    Par Benwad dans le forum Macros et VBA Excel
    Réponses: 4
    Dernier message: 24/02/2008, 21h43
  4. Faire un submit et ouvrir une popup sur une action
    Par identifiant_bidon dans le forum Général JavaScript
    Réponses: 3
    Dernier message: 26/10/2007, 16h00
  5. Généraliser une action sur une page entière
    Par fredodi dans le forum Général JavaScript
    Réponses: 2
    Dernier message: 05/06/2007, 14h40

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