rafraichir une FormView depuis MainFrame
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 dessus :cry: quelqu'un pourrait m'aider?
dans mon MainFrame j'initialise les vue.
Code:
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);
} |
et au clic sur un menu je change la vue :(tjs mainFrame)
Code:
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();
} |
mais j'aimerai, au moment de l'affichage rafraichir la vue...parce que les données ont pu être modifiées...
quelqu'un sait?
merci!