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 :

Mettre une coche dans un menu


Sujet :

MFC

  1. #1
    Nouveau Candidat au Club
    Profil pro
    Inscrit en
    Avril 2006
    Messages
    2
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Avril 2006
    Messages : 2
    Points : 1
    Points
    1
    Par défaut Mettre une coche dans un menu
    Bonjour à toi.
    Je suis un pitit débutant qui n'arrive pas à cocher un élément d'un menu
    Bon alors j aicommencé par chercher dans la FAQ et je suis tombé la dessus :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    CMainFrame::OnUpdateAttach(CCmdUI* pCmdUI) 
    {
         pCmdUI->SetCheck(m_bAttach); // suivant m_bAttach c'est coché ou non
    }
    Alors j ai recopié bêtement cette ligne sur la notification du message :ON_UPDATE_COMMAND_UI de l'item de mon menu concerné. Ma question concerne la variable m_bAttach à quoi correspond elle? s'agit il l ID de l'élément du menu à cocher? Dois-je mettre un nombre entier? un booléen? Dans tous les cas, le compilateur ne me signale aucune erreur mais j ai beau cliquer, cliquer et recliquer, aucune coche n apparaît
    Je passe surement à côté d'une évidence qui doit vous faire doucement rigoler mais je vais finir par devenir chauve à force de m'arracher les cheveux
    d'avance du temps que vous voudrez bien me consacrer

  2. #2
    Rédacteur
    Avatar de farscape
    Homme Profil pro
    Développeur informatique
    Inscrit en
    Novembre 2003
    Messages
    9 055
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Alpes Maritimes (Provence Alpes Côte d'Azur)

    Informations professionnelles :
    Activité : Développeur informatique
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Novembre 2003
    Messages : 9 055
    Points : 17 323
    Points
    17 323
    Par défaut
    salut,
    m_battach c'est un boolean suivant son etat on met/enleve la coche..
    il doit etre local a la classe fenetre qui s'occupe de l'etat du menu( ici mainframe)


  3. #3
    Nouveau Candidat au Club
    Profil pro
    Inscrit en
    Avril 2006
    Messages
    2
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Avril 2006
    Messages : 2
    Points : 1
    Points
    1
    Par défaut
    J ai commencé une réponse puis je suis parti manger et quand je suis revenu, je l ai fini; seulement quand j ai cliqué sur "envoyer" pour poster le message, on m a demandé de m identifier et j ai perdu tout ce que j avais écrit
    Du coup je fais une version résumée :
    J ai déclaré un bolléen en variable membre de ma classe fenêtre qui s occupe du menu. Je change l'état du booléen à chaque fois que je clique sur l élément de mon menu (celui qui pour l instant ne veut pas afficher de coche). J ai mis un MessageBox pour observer la valeur du booléen et celui ci change bien d'état à chaque fois que je clique sur l'élément du menu. Cependant, aucune coche n apparait
    Voici mon code
    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
    void CMenouDlg::OnUpdateItemACocher(CCmdUI* pCmdUI) 
    {
     pCmdUI->SetCheck(MonBool);
     
     if (MonBool==FALSE)
     {
    	 MessageBox("Ce coup ci c est false");
    	 MonBool=TRUE;
     }
     
     else	
     {
    	 MonBool=FALSE;
    	 MessageBox("Ce coup ci C est TRUE");
     }
    }
    Merci de m aider
    C est l'angoisse du temps qui passe qui nous fait parler du temps qu'il fait

  4. #4
    Rédacteur
    Avatar de farscape
    Homme Profil pro
    Développeur informatique
    Inscrit en
    Novembre 2003
    Messages
    9 055
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Alpes Maritimes (Provence Alpes Côte d'Azur)

    Informations professionnelles :
    Activité : Développeur informatique
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Novembre 2003
    Messages : 9 055
    Points : 17 323
    Points
    17 323
    Par défaut
    re,
    ça doit fonctionner ,
    le bool doit etre initialisé en accord avec le menu .
    exemple si le bool est initialisé a true tu dois placer la checkbox dans le menu dans l'editeur de ressources.
    le bool doit changer d'etat dans le oncommand et pas dans OnUpdateItemACocher

  5. #5
    Nouveau membre du Club
    Inscrit en
    Juin 2005
    Messages
    25
    Détails du profil
    Informations forums :
    Inscription : Juin 2005
    Messages : 25
    Points : 26
    Points
    26
    Par défaut au secour !!!!
    est ce que t'a resolu ce problème parce que je le recontre moi aussi et je sait pas quoi faire ???
    si tu l'a resolu aide moi à résoudre le mien stp

Discussions similaires

  1. Mettre une icone dans menu
    Par cjacquel dans le forum MFC
    Réponses: 2
    Dernier message: 16/01/2015, 20h20
  2. [iText] Mettre une coche (check mark) dans un PDF
    Par Coulon Arnaud dans le forum Documents
    Réponses: 7
    Dernier message: 21/11/2014, 15h41
  3. Mettre une application dans le menu de démarrage
    Par yann87 dans le forum Langage
    Réponses: 3
    Dernier message: 04/12/2008, 14h44
  4. Mettre une liste dans un menu popup
    Par RKOCOCO dans le forum Interfaces Graphiques
    Réponses: 2
    Dernier message: 14/05/2007, 14h09
  5. menu : mettre une coche
    Par firejocker dans le forum MFC
    Réponses: 4
    Dernier message: 29/11/2005, 11h55

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