Bonjour,
Voici le cadre de mon appli : une application boîte de dialogue.
dans cette boite de dialogue, dynamiquement, j'y crée une autre, qui se trouve être cliente de la premiere.
Cette seconde boîte de dialogue est prévue pour faire de la configuration.
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3 m_pConfig = new (CConfig); m_pConfig->Create(IDD_CONFIG_APP, &m_StaticModule);
J'utilise une classe CTreePropSheet pour ce faire (type de m_sheetConfig).
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39 BOOL CConfig::OnInitDialog() { CDialog::OnInitDialog(); //-------------------------------------------------------------------------- // Gestion de l'affichage du TreePropSheet et des pages de configuration //-------------------------------------------------------------------------- // Ajoute toutes les pages de configuration m_sheetConfig.AddPage(&pageGeneral); ... m_sheetConfig.AddPage(&pageVerifEtat); // Paramètre l'affichage m_sheetConfig.SetTreeViewMode( TRUE, TRUE ); m_sheetConfig.SetEmptyPageText (_T("Choisissez une des sections de '%s'")); m_sheetConfig.Create( this, WS_CHILD | WS_VISIBLE , 0 ); // On positionne le contrôle dans la fenêtre, si on a des pages (sinon, rien est fait). if( 0 != m_sheetConfig.GetPageCount() ) { m_sheetConfig.ModifyStyleEx( 0, WS_EX_CONTROLPARENT ); m_sheetConfig.ModifyStyle( 0, WS_TABSTOP ); CRect rcSheet; CWnd* pWnd = GetDlgItem( IDC_CFG_CLIENT ); if( !pWnd ) { ASSERT( FALSE ); return false; } pWnd->GetWindowRect( &rcSheet ); ScreenToClient( &rcSheet ); m_sheetConfig.SetWindowPos( NULL, rcSheet.left, rcSheet.top, rcSheet.right, rcSheet.bottom, SWP_NOZORDER|SWP_NOSIZE|SWP_NOACTIVATE ); } return true; }
Malheureusement, lorsque je veux afficher une boîte de dialogue, celle-ci n'apparaît pas, l'application semble figée... ce quelque soit la boîte de dialogue (AfxMessageBox(), SHBrowseForFolder(), ...).
Avez vous rencontré ce genre de problème ? ou avez vous une idée du pkoi ?
Merci
Partager