Bonjour,
Dans la boite de dialogue Fille j'ai 2 editBox et je veux donner le focus au 2ème, mais je ne sais pas où je mets cette ligne ?
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6 void CBaseDlg::OnClickedMyButton() { CFilleDlg dlgFille; dlgFille.DoModal (); }
Je ne peux pas la mettre avant " dlgFille.DoModal() car la fenêtre n'est pas encore crée et non plus après car elle sera déjà fermée !
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2 m_editChamp2.SetFocus();
Je ne peux pas le mettre aussi dans le constructeur de la classe fille ( à cet endroit là, la fenêtre n'est pas encore crée totalement ) !
Alors j'ai écrit la méthode OnInitDialog():
quand j'ouvre la boite de dialogue fille, le champ2 est bien initialisé à "abc" mais il tient pas le focus !
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12 BOOL CFilleDlg ::OnInitDialog() { CDialogEx::OnInitDialog(); m_editChamp2= (CEdit*)GetDlgItem(IDC_EDIT_CHAMP2); m_editChamp2-> SetWindowTextA("abc"); m_editChamp2->SetFocus(); return TRUE; // retourne TRUE, sauf si vous avez défini le focus sur un contrôle }
Alors quelqu'un peut m'expliquer comment faire svp ?
Partager