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 :

DoModal() boite de dialogue


Sujet :

MFC

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre averti
    Profil pro
    Inscrit en
    Novembre 2007
    Messages
    23
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Novembre 2007
    Messages : 23
    Par défaut DoModal() boite de dialogue
    Bonjour à tous,
    j'aimerai savoir comment lancer une boite de dialogue à partir du click sur un bouton d'une autre boite de dialogue qui ne soit pas le bouton OK.
    par exple j'ai deux boites: boite1 ; boite2 ;

    si le bouton en question etait le bouton " OK", je fais
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    if(boite1.DoModal()==IDOK)
       boite2.DoModal() ;
    Mais pour un autre bouton dont l'ID est par exemple IDC_BUTTON1
    je fais :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    if(boite1.DoModal()==IDC_BUTTON1)
       boite2.DoModal() ;
    mais ça marche pas. Alors j'ai besoin d'aide SVP

    merci d'avance.

  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
    Par défaut
    salut,
    dans la méthode de reponse liée au bouton IDC_BUTTON1 tu fais :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
     
    EndDialog(IDC_BUTTON1);

  3. #3
    Membre averti
    Profil pro
    Inscrit en
    Novembre 2007
    Messages
    23
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Novembre 2007
    Messages : 23
    Par défaut DoModal()
    merci de m'avoir repondu;
    donc je fais
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
     
    if(boite1.DoModal()==IDC_BUTTON1)
    {
    boite2.DoModal() ;
    EndDialog(IDC_BUTTON1);
    c'est ça ?
    merci

  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
    Par défaut
    pense a mettre les balises de code...
    sinon non ce n'est pas ça.
    dans la classe correspondant a ton objet boite1, tu dois avoir une méthode associée au clic du bouton IDC_BUTTON1.
    c'est dans cette méthode que tu fais EndDialog...

  5. #5
    Membre averti
    Profil pro
    Inscrit en
    Novembre 2007
    Messages
    23
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Novembre 2007
    Messages : 23
    Par défaut DoModal()
    salut farscape
    je pense que pour plus de comprehension je vais te montrer mon code.
    mon code est le suivant:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
     
    void CEssaiDoc::OnCommencer()
    //commencer est un item
    {
        // TODO : ajoutez ici le code de votre gestionnaire de commande
        CTest1Dlg boite1 ;
        CTest2Dlg  boite2 ;
        if(boite1.DoModal()== IDC_BUTTON1)
            boite2.DoModal() ;
    }
    La boite de dialogue boite 1 omporte un bouton dont l'ID est IDC_BUTTON1 ;
    la boite de dialogue boite2 ne comporte qu'un bouton OK et deux boutons Radios(OUI et NON) .
    j'aimerai qu'un click sur le bouton de la boite boite1 me lance la boite de dialogue boite2, et que si l'utilisateur venait à cocher sur le bouton radio "OUI" de la boite2 le rocessus recommence avec le lancement de la boite boite1. En fait du moment où l'utilisateur aura lancer la boite boite1 à partir de l'item "commencer" le processus doit se repeter tant qu'il clique sur "OUI" de la deuxieme boite sans relancer à partir de l'item.

    j'espere que j'ai été clair dans mes explications.
    merci

  6. #6
    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
    Par défaut
    Citation Envoyé par farscape Voir le message
    pense a mettre les balises de code...
    sinon non ce n'est pas ça.
    dans la classe correspondant a ton objet boite1, tu dois avoir une méthode associée au clic du bouton IDC_BUTTON1.
    c'est dans cette méthode que tu fais EndDialog...
    relis bien mon post...
    tu dois générer avec l'assistant un méthode clic sur le bouton dans ta classe CTest1Dlg.
    dans cette méthode tu fais un EndDialog de IDC_BUTTON1

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

Discussions similaires

  1. Pb plusieurs boites de dialogues
    Par schnito dans le forum MFC
    Réponses: 10
    Dernier message: 25/02/2004, 21h44
  2. [MFC] rendre une boite de dialogue inactive
    Par Vestaproman dans le forum MFC
    Réponses: 8
    Dernier message: 22/01/2004, 14h09
  3. Affichage d'une boite de dialogue nonmodale avec MFC
    Par the.cable.guy dans le forum Windows
    Réponses: 3
    Dernier message: 04/07/2003, 17h59
  4. Réponses: 5
    Dernier message: 04/04/2003, 15h02
  5. Comment cree une boite de dialogue parcourir
    Par kenshi dans le forum MFC
    Réponses: 5
    Dernier message: 06/01/2003, 10h30

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