bonjour,
je suis récemment passé sous Visual C++ 2005 (j'étais auparavant sous VC++ 6.0) et je rencontre des problèmes pour des opérations de bases.
j'ai créé une boite dialogue toute simple associée à la classe CDialTranslation et ayant un champ de type edit box auquel j'ai associé la variable m_distance (type int). J'apelle cette boite de dialogue avec un évènement sur un item du menu :
Sous VC++ 6 après avoir lancé la fonction DoModal je récupérais le nombre rentré par l'utilisateur dans la variable dial.m_distance, or sous VC++2005 cette variable renvoi 0 dans tous les cas.
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7 void CAnimationDoc::OnSimpleTranslation() { DialTranslation dial; dial.DoModal(); if( dial.m_distance > 512) AfxMessageBox("vous devez rentrer une distance inférieur à 512 pixels"); }
On m'a conseillé de rajouter un UpdateData(TRUE) dans le OnOK() associé, mais je ne trouve pas l'équivalent du MFC ClassWizard pour rajouter une foction liée à la boite de dialogue?! j'ai donc tapé ce code "à la main" :
et résultat ça ne change strictement rien.
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5 void CDialTranslation::OnOK() { UpdateData(TRUE); CDialog::OnOK(); }
je rappelle que le précédent code marchait parfaitement sous VC++ 6.0 et donc que je ne débute pas en MFC, mais cette nouvelle version de Visual me fait perdre tous mes repères puisque plus rien ne marche!
besoin d'aide svp
merci!








Répondre avec citation












Partager