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 :

Récupérer l'Etat d'un CButton


Sujet :

MFC

  1. #1
    Membre averti
    Profil pro
    Inscrit en
    Juillet 2007
    Messages
    37
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juillet 2007
    Messages : 37
    Par défaut Récupérer l'Etat d'un CButton
    Bonjour,
    j'ai un soucis pour récupérer l'etat d'un bouton. Par état, j'entend appuyé ou relaché.
    J'ai tapé le code :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    UINT state;
    	state = m_Bouton2Etats.GetState();
    		if(state==8) {
                         m_Bouton2Etats.SetWindowText("Etat n°2");
    		     m_Bouton2Etats.SetState(TRUE);
                    }
                    else {
                         m_Bouton2Etats.SetWindowText("Etat n°1");
    	             m_Bouton2Etats.SetState(FALSE);
                     }
    Mon bouton "s'enfonce" correctement et passe a l'état 2, par contre, lorsque je clique à nouveau, il reste à l'état 1. Le getState me retourne toujours la valeur 8

    Je me plante peut etre completement, mais si quelqu'un a une idée, je suis preneur

    Merci

  2. #2
    Invité
    Invité(e)
    Par défaut
    tu n'utilises pas la bonne fonction.
    d'apres la MSDN, CButton::GetState() sert à récupérer l'état, oui mais pas celui que tu crois (l'état focus, highlight, et check state - mais uniquement pour des radios et checkbox).

    il faut que tu utilise CButton::GetCheck() à la place :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    int iState = m_Bouton2Etats.GetCheck();
    if (iState == BST_CHECKED) {
        //Bouton enfoncé
    }
    else if (iState == BST_UNCHECKED) {
        //Bouton relaché
    }
    else  {  //BST_UNDERTERMINATE
        //Bouton dans un etat tiers (uniquement pour les boutons 3 états)
    }

Discussions similaires

  1. Réponses: 5
    Dernier message: 27/09/2011, 16h21
  2. [C#] Récupérer l'etat d'un ping
    Par Cheeper dans le forum C#
    Réponses: 5
    Dernier message: 13/08/2009, 11h51
  3. [AC-2007] Récupérer valeur dans Sous-Etat
    Par David42000 dans le forum IHM
    Réponses: 2
    Dernier message: 26/07/2009, 19h41
  4. Récupérer plusieurs lignes dans un etat
    Par Bud67 dans le forum WinDev
    Réponses: 8
    Dernier message: 10/06/2009, 11h48
  5. Récupérer l'Etat du serveur
    Par ohmwork dans le forum MS SQL Server
    Réponses: 1
    Dernier message: 08/03/2006, 22h08

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