[MFC] Lancement de l'ouverture d'une fenetre a partir d'un m
Bonjour,
Mon serpent de mer continue, Je suis confronte au probleme suivant. Je tente de lancer l'ouverture d'une fenetre (qui est en fait un splitter contenant une vue a droite et des boites d'edition a gauche) a partir d'un item d'un menu.
Ma fenetre est un splitter CSeparateurForm
contenant une vue CAnimationView
et un formulaire CAnimationFlexionSimpleForm.
J'ai reproduit les indications fournies par farscape (merci a lui). Ca marche pour l'ouverture de plusieurs fenetres lorsque l'on cree un nouveau document. La transposition a mon probleme ne fonctionne pas. Il me manque des billes.
Dans la classe application j'ai rajoute le code suivant, et la déclaration des variables membres associees
Code:
1 2 3 4 5 6 7 8 9 10 11 12 13 14
|
m_pDocTemplate = new CMultiDocTemplate(
IDR_SECTIOTYPE,
RUNTIME_CLASS(CSectionBADoc),
RUNTIME_CLASS(CChildFrame),
RUNTIME_CLASS(CSectionBAView));
AddDocTemplate(m_pDocTemplate);
//la vue que je veux afficher a partir du menu
m_pAnimationTemplate = new CMultiDocTemplate(
IDR_SECTIOTYPE,
RUNTIME_CLASS(CSectionBADoc),
RUNTIME_CLASS(CSeparateurForm),
RUNTIME_CLASS(CAnimationFlexionSimpleForm)); |
L'ajout du code suivant dans la vue permet effectivement le lancement a la creation d'un nouveau document de mes deux vues.
Code:
1 2 3 4 5 6 7 8 9
|
void CSectionBAView::OnInitialUpdate()
{
CView::OnInitialUpdate();
CSectionBAApp* theApp=(CSectionBAApp*)AfxGetApp();
CFrameWnd* pFrame=theApp->m_pAnimationTemplate->CreateNewFrame(GetDocument(), GetParentFrame());
theApp->m_pDocTemplate->InitialUpdateFrame(pFrame, GetDocument());
} |
Mais impossible de trouver une formule pour lancer l'ouverture d'une fenetre a partir d'un item de menu.
Dans quelle classe faut il implanter la fonction (appelons la OnAnimationFlexionSimple) qui lance l'ouverture de la deuxieme fenetre ?
Et quelle code faut il definir pour ouvrir cette nouvelle fenetre ?
D'avance merci pour toute information
xavier