Bonjour,

Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
 
void CBaseDlg::OnClickedMyButton()
{
 CFilleDlg dlgFille;
 dlgFille.DoModal ();  
}
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
 
     m_editChamp2.SetFocus();
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 !
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():
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
}
quand j'ouvre la boite de dialogue fille, le champ2 est bien initialisé à "abc" mais il tient pas le focus !


Alors quelqu'un peut m'expliquer comment faire svp ?