Bonjour,
dans mon projet j'ai plusieurs CFormView qui s'affichent en fonction du menu qu'on sélectionne.
J'aimerai pouvoir rafraichir ma vue depuis ma CMainFrame... mais je n'y arrive pas ça fait plusieurs semaines que je bug dessusquelqu'un pourrait m'aider?
dans mon MainFrame j'initialise les vue.
et au clic sur un menu je change la vue
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 void CMainFrame::InitDonnees() { //Matières //CMatieres * viewMatieres = new CMatieres(); viewMatieres = (CView *)new CMatieres(); //viewMatieres = new CMatieres(); viewMatieres->Create(NULL, NULL, 0L, CFrameWnd::rectDefault, this, 1, NULL); //professeurs viewProfesseurs = (CView *)new CBeanProfesseur(); viewProfesseurs->Create(NULL, NULL, 0L, CFrameWnd::rectDefault, this, 2, NULL); //prof->InitDonnees(); //Organismes viewOrganismes = (CView *)new COrganismes(); //viewOrganismes = new COrganismes(); viewOrganismes->Create(NULL, NULL, 0L, CFrameWnd::rectDefault, this, 3, NULL); //Disponibilites viewDisponibilites = (CView *)new CDisponibilites(); viewDisponibilites->Create(NULL, NULL, 0L, CFrameWnd::rectDefault, this, 4, NULL); }tjs mainFrame)
mais j'aimerai, au moment de l'affichage rafraichir la vue...parce que les données ont pu être modifiées...
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 void CMainFrame::SelectView(UINT ViewID) { CView* pOldActiveView= GetActiveView(); CView* pNewActiveView; switch(ViewID) { case 1: pNewActiveView =viewMatieres;// (CView*)new CMatieres(); break; case 2: pNewActiveView = viewProfesseurs;//(CView*)new CProfesseurs(); break; case 3: pNewActiveView = viewOrganismes;//(CView*)new COrganismes(); break; case 4: pNewActiveView = viewDisponibilites;//(CView*)new CDisponibilites(); break; default: AfxMessageBox("Identificateur de vue invalide"); return; } // pNewActiveView->Create(NULL, NULL, 0L, CFrameWnd::rectDefault, this, // ViewID, NULL); SetActiveView(pNewActiveView); pOldActiveView->ShowWindow(SW_HIDE); pNewActiveView->ShowWindow(SW_SHOW); pOldActiveView->SetDlgCtrlID(m_CurrentViewID); pNewActiveView->SetDlgCtrlID(AFX_IDW_PANE_FIRST); m_CurrentViewID = ViewID; RecalcLayout(); }
quelqu'un sait?
merci!
Partager