Recuperer le document actif

Signaler
Messages postés
260
Date d'inscription
lundi 27 janvier 2003
Statut
Membre
Dernière intervention
27 août 2008
-
Messages postés
260
Date d'inscription
lundi 27 janvier 2003
Statut
Membre
Dernière intervention
27 août 2008
-
Salut,

Je cherche depuis pas mal de temps a récupérer depuis ma classe CWinApp le Document CDocument actif dans l'application. Mon appli est une MDI. J'ai déja éssayé comme ceci :

// Récuperation du nom de fichier en cours d'éditionPOSITION p1 GetFirstDocTemplatePosition();CDocTemplate* doctemplate this->GetNextDocTemplate(p1);
POSITION p2 = doctemplate->GetFirstDocPosition();

CGentianeDoc* gentdoc = (CGentianeDoc*) doctemplate->GetNextDoc(p2);
CGentianeDoc* gentdoc = (CGentianeDoc*) doctemplate->m_pDocClass;
CString CurrentNom = gentdoc->GetPathName();

Mais ca me récupere le premier document et pas le doc actif. Merci pour vos réponses,Hart

3 réponses

Messages postés
113
Date d'inscription
lundi 24 février 2003
Statut
Membre
Dernière intervention
5 janvier 2004

essaie ceci (si MFC):

pMainFrame->GetActiveDocument();

pMainFrame étant une variable appartenant à la classe C...App.

Pour récupérer un ptr sur la fenêtre priciplae:
CMainFrame pMainFrame = AfxGetMainWnd();
pMainFrame->GetActiveDocument();

Ou en raccourci:
AfxGetMainWnd()->GetActiveDocument();

A bientôt,
P-A
Messages postés
113
Date d'inscription
lundi 24 février 2003
Statut
Membre
Dernière intervention
5 janvier 2004

A bientôt,
P-A
J'ai oublié une étoile:

CMainFrame *pMainFrame = ...
Messages postés
260
Date d'inscription
lundi 27 janvier 2003
Statut
Membre
Dernière intervention
27 août 2008
1
Merci pour ta réponse, c'est exactement ce qu'il me fallait...
Hart