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 :

[MFC]traiter les messages d'un boite qui en ouvre une autre.


Sujet :

MFC

  1. #1
    Membre confirm�
    Profil pro
    Inscrit en
    Juin 2004
    Messages
    67
    D�tails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juin 2004
    Messages : 67
    Par d�faut [MFC]traiter les messages d'un boite qui en ouvre une autre.
    suite a mon premier probleme deja r�solu par Farscape (merci encore)
    cette histoire de pompe a message ca ma donn� des id�es pour un autre probleme

    jai une boite disons CDialog1 qui possede un bouton CButton1
    quand on appuie sur CButton1 ca ouvre CDialog2 ( DoModal(); )
    pendant que CDialog2 est active je ne recois plus les messages dans CDialog1 .
    A priori c'est normal mais la j'aimerais pouvoir recevoir les messages .
    et le probleme est que si je cr�e CDialog2 avec Create(); je vois pas trop comment attendre que CDialog2 est fini pour pouvoir appeler DestroyWindow();
    A moins evidemment de lancer une proc�dure bidon qui utilise justement cette fameuse pompe a messages et boucle a l infini tant que CDialog2 a pas fini mais je trouve pas ca propre .

    Ca doit etre un probleme vraiment bateau mais j'arrive pas a visualiser une solution

  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
    verifies deja si tu n'as pas donn� a la dialogue2 la dialogue1 comme parent...

  3. #3
    Membre confirm�
    Profil pro
    Inscrit en
    Juin 2004
    Messages
    67
    D�tails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juin 2004
    Messages : 67
    Par d�faut
    a priori non , dans le constructeur c'est par defaut a NULL .

  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
    pourquoi appeler destroywindow si la fenetre se ferme par une action utilisateur ?
    la seule chose que tu as besoin de te soucier c'est le delete de l'objet :
    http://c.developpez.com/faq/vc/?page...gPostNcDestroy

  5. #5
    Invit�
    Invit�(e)
    Par d�faut
    salut,

    je prends la discussion en cours et j'ai a peu pres la meme question que platypus.

    J'ai une boite de dialogue 1 qui lance une boite de dialogue 2 avec DoModal.

    J'aimerai pouvoir continuer sur les 2 boites de dialogue, pas que sur la 2eme.
    Et j'aimerai aussi faire du drag&drop entre ces boites.

    quelqu'un aurait une idee ?

  6. #6
    Membre confirm�
    Profil pro
    Inscrit en
    Juin 2004
    Messages
    67
    D�tails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juin 2004
    Messages : 67
    Par d�faut
    du coup l objet de la classe CDialog2 est membre de la classe CDialog1 par contre ?

    en fait je faisais tout dans le code du bouton .
    incluant la d�claration aussi.

  7. #7
    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
    tu en a eventuellement besoin mais pas pour la fin ...,vu que l'objet se detruit lui-meme.
    il serait plus utile de passer un pointeur de dialog1 a dialog2
    pour que sur la fermeture dialog2 affecte les resultats dans dialog1....


  8. #8
    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 bill baroud
    salut,

    je prends la discussion en cours et j'ai a peu pres la meme question que platypus.

    J'ai une boite de dialogue 1 qui lance une boite de dialogue 2 avec DoModal.

    J'aimerai pouvoir continuer sur les 2 boites de dialogue, pas que sur la 2eme.
    Et j'aimerai aussi faire du drag&drop entre ces boites.

    quelqu'un aurait une idee ?
    salut ,la boite de dialogue n'est pas le plus indiqu� pour �a .
    le model d'application MDI permet ce fonctionnement naturellement...

  9. #9
    Membre confirm�
    Profil pro
    Inscrit en
    Juin 2004
    Messages
    67
    D�tails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juin 2004
    Messages : 67
    Par d�faut
    je suis pas sur de te suivre .
    actuellement je declarais CDialog2 dans le code du bouton de la 1 .
    de ce fait a la fin du code du bouton la CDialog2 disparait si ouverte avec Create();

  10. #10
    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
    vu que tu cr�e un boite de dialogue non modale le code du bouton ne doit pas attendre ..
    on commencera par rendre disable le bouton pour eviter une reentrance.
    l'objet dialog2 est autonome .
    quand il se ferme il s'occupe de mettre a jour par pointeur interpos� la dialogue 1 et de reactiv� le bouton de la dialogue.


  11. #11
    Membre confirm�
    Profil pro
    Inscrit en
    Juin 2004
    Messages
    67
    D�tails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juin 2004
    Messages : 67
    Par d�faut
    ok je crois avoir compris .

    Code : S�lectionner tout - Visualiser dans une fen�tre � part
    1
    2
    3
    4
    5
    6
    7
    8
    void CMyDlg::PostNcDestroy() 
    {
    	CTouchgoDlg* pParent = (CTouchgoDlg*)GetParent();
    	pParent->c_ButtonTest.EnableWindow(true);
    	CDialog::PostNcDestroy();
    	delete this;
     
    }
    je peux remettre le bouton enable comme ecrit ?
    a priori j'ai une erreur bizard.

  12. #12
    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
    tu es sur de ton GetParent() ?
    �a ne fonctionne que si dans le constructeur de la dialogue2 tu l'a specifi�..

  13. #13
    Membre confirm�
    Profil pro
    Inscrit en
    Juin 2004
    Messages
    67
    D�tails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juin 2004
    Messages : 67
    Par d�faut
    oui voila c'est bon .
    j'ai sp�cifi� le parent dans le constructeur de la 2eme Boite et ca roule .

    Merci encore pour toute ton aide !!

  14. #14
    Invit�
    Invit�(e)
    Par d�faut
    en fait, je ne peux pas utiliser de MDI. Je fais une extension � une application existante.

    Mais j'ai trouve comment lancer la fille

    je suis sur le drag & drop

+ R�pondre � la discussion
Cette discussion est r�solue.

Discussions similaires

  1. traiter les messages syst�mes
    Par Patnel dans le forum Macros et VBA Excel
    R�ponses: 28
    Dernier message: 18/01/2013, 07h17
  2. les messages de ma boite mail vont directement sur outlook
    Par beatriceregnault dans le forum Outlook
    R�ponses: 1
    Dernier message: 15/07/2012, 13h08
  3. Traiter les messages d'une frame
    Par etranger dans le forum AWT/Swing
    R�ponses: 3
    Dernier message: 10/04/2007, 15h26
  4. [Mail] Telecharger les message de ma boite mail
    Par youcef81 dans le forum Langage
    R�ponses: 5
    Dernier message: 07/08/2006, 13h26
  5. [MFC] d�vier les messages de MESSAGE_MAP
    Par mychawel dans le forum MFC
    R�ponses: 3
    Dernier message: 12/07/2004, 14h05

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