Bonjour,

je dois r�aliser une appli windows qui permet de lire des fichiers csv et cr�er un fichier excel.
J'avais d�ja r�alis� ce programme sous excel en vba mais suite � l'internationalisation du programme (fran�ais, japonais, turc....) et des diff�rentes versions d'excel utilis�s (95 � XP 2003), certains utilisateurs recontrent des problemes.

Du coup le choix fut fait de passer ce programme en C++, histoire de ne plus avoir de soucis.
Cette fois ci les soucis sont pour moi, mes connaissances en C++ �tant tr�s limit� (pas pratiqu� depuis les td de mon bts).

Mon probleme concerne le changement d'�cran permettant le traitement des fichiers. Je m'explique.
Il y a trois �crans ou plus exactement 3 formview (j'ai cr�� un projet ayant comme affichage des formview)

- le premier formview (fichier MainView.cpp) affiche 2 boutons radio proposant une analyse du contenu des fichiers par mois ou par p�riode.

- le deuxi�me formview (fichier Month.cpp) affiche ces memes boutons radio, qui serve de navigation, et une listbox contenant la liste de smois disponible, ainsi qu'un simple bouton lancant l'analyse apres s�lection du mois.

- le troisi�me formview (fichier Period.cpp) affiche les deux boutons radio et 6 listbox pour d�finir la p�riode choisi (2 listbox pour le jour, le moi et l'ann�e dont un pour le d�but et l'autre pour la fin de p�riode).

j'arrive � changer d'affichage en passant par un menu avec ce type de code lancant une fonction SwitchToForm pr�sente dans mon fichier MainFrm.cpp:

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::SwitchToForm(int nForm){
     CView* pOldActiveView = GetActiveView();
     CView* pNewActiveView = (CView*)GetDlgItem(nForm);
 
     if (pNewActiveView == NULL){
          switch(nForm){
               case IDD_MAIN_FORM:
               pNewActiveView = (CView*)new CMainView;
               break;
 
               case IDD_MONTH_FORM:
               pNewActiveView = (CView*)new CMonth;
               break;
 
               case IDD_PERIOD_FORM:
               pNewActiveView = (CView*)new CPeriod;
               break;
          }
 
          CCreateContext context;
          context.m_pCurrentDoc = pOldActiveView->GetDocument();
          pNewActiveView->Create(NULL, NULL, 0L, CFrameWnd::rectDefault, this, nForm, &context);
          pNewActiveView->OnInitialUpdate();
     }
 
     SetActiveView(pNewActiveView);
     pNewActiveView->ShowWindow(SW_SHOW);
     pOldActiveView->ShowWindow(SW_HIDE);
 
     ::SetWindowWord(pNewActiveView->m_hWnd, GWL_ID, AFX_IDW_PANE_FIRST);
     RecalcLayout();
     delete	pOldActiveView;
}
l'appel de cette fonction se fait comme cela sur le menu:

Code : S�lectionner tout - Visualiser dans une fen�tre � part
1
2
3
4
5
6
void CMainFrame::OnForm1() {
     SwitchToForm(IDD_MAIN_FORM);	
}
void CMainFrame::OnUpdateForm1(CCmdUI* pCmdUI) {
     pCmdUI->Enable(GetActiveView()->GetRuntimeClass()!=RUNTIME_CLASS(CMainView));
}
Or je souhaite que ce changement se fasse lors du click sur le bouton radio.
Code : S�lectionner tout - Visualiser dans une fen�tre � part
1
2
3
void CMainView::OnReportType0() 
{	
}
Quel propri�t� dois je employer pour �aliser cette action.
S'il faut je suis pret � passer sou Visual Studio.net, s'il y a un code plsu pratique

Pardon pour la longueur de l'explication du d�butant niveau 0 que je suis en C++, et merci pour votre aide