IdentifiantMot de passe
Loading...
Mot de passe oubli� ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les r�ponses en temps r�el, voter pour les messages, poser vos propres questions et recevoir la newsletter

MFC Discussion :

[MFC] Deux vues pour un document


Sujet :

MFC

Vue hybride

Message pr�c�dent Message pr�c�dent   Message suivant Message suivant
  1. #1
    Candidat au Club
    Inscrit en
    F�vrier 2004
    Messages
    2
    D�tails du profil
    Informations forums :
    Inscription : F�vrier 2004
    Messages : 2
    Par d�faut [MFC] Deux vues pour un document
    G cr�� un projet avec AppWizard, avec architecture document-vue.
    J'ai ajout� � la classe vue un membre CSplitterWnd.
    G ensuite cr�� 2 classes: une d�riv�e de CView (1) et l'autre de CFormView (2), puis j'ai cr�� le fractionnement static � deux panneaux en utilisant ces vues.
    Dans InitInstance, le document template associe le document courant avec la classe (1).

    Ma question est : comment le document peut-il obtenir un pointeur sur la classe (2) ?

  2. #2
    R�dacteur
    Avatar de farscape
    Homme Profil pro
    D�veloppeur informatique
    Inscrit en
    Novembre 2003
    Messages
    9 055
    D�tails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Alpes Maritimes (Provence Alpes C�te d'Azur)

    Informations professionnelles :
    Activit� : D�veloppeur informatique
    Secteur : High Tech - �diteur de logiciels

    Informations forums :
    Inscription : Novembre 2003
    Messages : 9 055
    Par d�faut
    salut,
    la question est fine!
    ton splitter est initialise dans la fonction OnCreateClient de la MDI .
    ensuite quand tu cr�es les 2 views associ�es au splitter dans le dernier argument de CreateView on passe la variable CCreateContext* pContext
    Provenant de
    OnCreateClient(LPCREATESTRUCT lpcs, CCreateContext* pContext)
    le lien avec le doc est fait par cette interm�diaire.
    la structure CCreateContext contient un pointeur sur le document � associer
    par l'interm�diaire de la variable m_pCurrentDoc

  3. #3
    Candidat au Club
    Inscrit en
    F�vrier 2004
    Messages
    2
    D�tails du profil
    Informations forums :
    Inscription : F�vrier 2004
    Messages : 2
    Par d�faut
    Je te remercie, gr�ce � tes explications j'ai pu r�alisez ce que je voulais ;-)

  4. #4
    R�dacteur
    Avatar de farscape
    Homme Profil pro
    D�veloppeur informatique
    Inscrit en
    Novembre 2003
    Messages
    9 055
    D�tails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Alpes Maritimes (Provence Alpes C�te d'Azur)

    Informations professionnelles :
    Activit� : D�veloppeur informatique
    Secteur : High Tech - �diteur de logiciels

    Informations forums :
    Inscription : Novembre 2003
    Messages : 9 055
    Par d�faut
    salut ,n'oublies pas le tag resolu sur ton post

  5. #5
    Invit� de passage
    Inscrit en
    Septembre 2004
    Messages
    1
    D�tails du profil
    Informations forums :
    Inscription : Septembre 2004
    Messages : 1
    Par d�faut [MFC] Deux vues pour un document
    Mon essai de programme (appWizard) est similaire � Lark, � la diff�rence que j'ai choisi de placer que des classes d�riv�es de CFormView. Avec les boutons de contr�le je passe d'une boite de dialog � l'autre sans difficult�.

    H�las, je ne parviens pas � passer les variables.

    J'ai bien OnCreateClient(LPCREATESTRUCT lpcs, CCreateContext* pContext) dans ma classe CSplitterWnd, mais je ne comprends pas comment envoyer ma donn�e (m_depart de la classe CDialog1 - cot� gauche) � ma donn�e (m_arrivee de ma classe CDialog2 - cot� droit) via la classe CSplitterWnd ?

    Merci pour votre aide.


  6. #6
    Membre averti
    Inscrit en
    Juin 2004
    Messages
    20
    D�tails du profil
    Informations forums :
    Inscription : Juin 2004
    Messages : 20
    Par d�faut
    En fait, tu veux passer une donn�es d'une fenetre � une autre. Je ne crois pas que tu puisses facilement acc�der � l'autre formview depuis ta premi�re.

    Pourquoi ne passes tu pas par le document ?

    Le plus simple, c'est d'avoir les informations dans la classe document, qui elle, est accessible depuis tes deux formviews.

  7. #7
    R�dacteur
    Avatar de farscape
    Homme Profil pro
    D�veloppeur informatique
    Inscrit en
    Novembre 2003
    Messages
    9 055
    D�tails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Alpes Maritimes (Provence Alpes C�te d'Azur)

    Informations professionnelles :
    Activit� : D�veloppeur informatique
    Secteur : High Tech - �diteur de logiciels

    Informations forums :
    Inscription : Novembre 2003
    Messages : 9 055
    Par d�faut
    Salut plusieurs m�thodes :
    1)
    Mettre un pointeur sur les classes Form dans les deux forms
    Ex :
    Code : S�lectionner tout - Visualiser dans une fen�tre � part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
     
    class Form2 ;
     
    class Form1
    {
    ….
    Form2 *m_pForm2 ;
    } ;
     
    class Form2 
    {
    Form1 *m_pForm1 ;
    } ;
    Il suffit ensuite dans la child sur la cr�ation des fen�tres par createview d�affecter les pointeurs respectifs.
    Code : S�lectionner tout - Visualiser dans une fen�tre � part
    1
    2
    3
    4
    5
    6
    7
    8
    9
     
    Form1 *pForm1=( Form1 *)m_wndSplitter.GetPane(0,0);
    Form2 *pForm2=(Form2 *)m_wndSplitter.GetPane(1,0);
     
    // activate the input view
    SetActiveView(pForm1);
    // set view dependance 
    pForm1>m_pForm2=pForm2;
    pForm2->m_pForm1=pForm1;
    2) en dynamique :
    Retrouver la child avec GetParentFrame la on acc�de au splitter et a partir du splitter on accede aux views.

Discussions similaires

  1. Cr�ation d'une vue pour deux tables
    Par Athanor027 dans le forum PostgreSQL
    R�ponses: 3
    Dernier message: 26/10/2010, 07h10
  2. Regrouper deux requetes pour faire une vue
    Par shaun_the_sheep dans le forum Langage SQL
    R�ponses: 2
    Dernier message: 21/04/2009, 17h38
  3. Deux feuilles CSS pour un document HTML
    Par tazmania dans le forum Mise en page CSS
    R�ponses: 2
    Dernier message: 20/05/2007, 11h46
  4. R�ponses: 5
    Dernier message: 07/03/2006, 10h04
  5. Cr�er une vue pour trier une requete UNION ?
    Par Etienne Bar dans le forum SQL
    R�ponses: 3
    Dernier message: 03/01/2003, 20h22

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo