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
L'ajout du code suivant dans la vue permet effectivement le lancement a la creation d'un nouveau document de mes deux vues.
Code : Sélectionner tout - Visualiser dans une fenêtre à part
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));
Mais impossible de trouver une formule pour lancer l'ouverture d'une fenetre a partir d'un item de menu.
Code : Sélectionner tout - Visualiser dans une fenêtre à part
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()); }
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
Partager