[MFC] Passer d'une fenetre Domodal en ShowWindow
Bonjours a tous,
J'ai un souci sur certain pc portable uniquement ...
sous un bouton j'affiche une fenetre ainsi :
Code:
if ( m_pCourbeFrime->DoModal() == IDOK )
j'instancie ma CDialog dans mon constructeur de cette facon :
Code:
m_pCourbeFrime = new CSaisieNouvelleCourbe( "Frime", "Bearing travel (mm)", "Load (N)" );
Sur la plupart des machines ce code fonctionne parfaitement.
Par contre sur 2 pc portable la fonction DoModal me renvoi -1 (erreur de creation)
j'ai voulu remplacer ce DoModal par ce que j'ai trouvé dans la FAQ, c'est a dire :
Code:
1 2
| m_pCourbeFrime->Create(CSaisieNouvelleCourbe ::IDD,this);
m_pCourbeFrime->ShowWindow(SW_SHOW); |
Ma fenetre s'affiche (je n'ai pas tester sur les portable en question pour le moment)
Mais je ne sais pas comment intercepter les click sur Ok ou Cancel de cette boite de dialog hors de la classe de ma CDialog.
Je precise que j'instancie cette classe plusieurs fois dans le programe avec differrente données donc utiliser les OnOk() et OnCancel() de la CDialog est exclu.
Pour resumer comment puis je remplacer cette ligne de code :
Code:
1 2 3
| if ( m_pCourbeFrime->DoModal() == IDOK )
{ //.......
} |
Ou mieux encore ^^ comment faire fonctionner le code d'origine sur mes pc à problème !
N'hesitez pas a me demander plus d'explication, je n'ai pas voulu ecrire 300 lignes sur ce pb ^^
Merci d'avance !