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 MDI basée sur un formulaire


Sujet :

MFC

  1. #1
    Membre averti
    Profil pro
    Inscrit en
    Octobre 2008
    Messages
    19
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Octobre 2008
    Messages : 19
    Par défaut MFC MDI basée sur un formulaire
    Bonjour,
    J'ai utilisé appwizard pour créer une MDI. Ensuite j'ai créé un formulaire dérivant de CDialog contenant un boutton. J'ai modifié les documents templates dansla classse C*App::InitInstance():

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
       ....
                 CMultiDocTemplate* pDocTemplate;
    	pDocTemplate = new CMultiDocTemplate(
    		IDR_DEMOTYPE,
    		RUNTIME_CLASS(CDemoDoc),
    		RUNTIME_CLASS(CChildFrame), // custom MDI child frame
    		//RUNTIME_CLASS(CDemoView),
    		RUNTIME_CLASS(CFormulaire));// a la place de C*View
    	AddDocTemplate(pDocTemplate);
    voici l'erreur générée :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    error C2039:  'classCFormulaire' : is not a member of 'CFormulaire'
            e:\sc++\mfc\mdi\demo\formulaire.h(13) : see declaration of 'CFormulaire'
    je ne comprends pas
    merci de votre aide
    nina

    voici le code de CFormulaire :

    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
    34
    35
    36
    37
    38
    39
    40
    41
    42
    43
    44
    45
    46
    47
    48
    49
    50
    51
    52
    #if !defined(AFX_FORMULAIRE_H__E07E9636_6FE5_44E6_93CE_55E413D9ED2F__INCLUDED_)
    #define AFX_FORMULAIRE_H__E07E9636_6FE5_44E6_93CE_55E413D9ED2F__INCLUDED_
     
    #if _MSC_VER > 1000
    #pragma once
    #endif // _MSC_VER > 1000
    // Formulaire.h : header file
    //
     
    /////////////////////////////////////////////////////////////////////////////
    // CFormulaire dialog
     
    class CFormulaire : public CDialog
    {
    // Construction
    public:
    	CFormulaire(CWnd* pParent = NULL);   // standard constructor
     
    // Dialog Data
    	//{{AFX_DATA(CFormulaire)
    	enum { IDD = IDD_FORMVIEW };
    		// NOTE: the ClassWizard will add data members here
    	//}}AFX_DATA
     
     
    // Overrides
    	// ClassWizard generated virtual function overrides
    	//{{AFX_VIRTUAL(CFormulaire)
    	protected:
    	virtual void DoDataExchange(CDataExchange* pDX);    // DDX/DDV support
    	//}}AFX_VIRTUAL
     
    // Implementation
    protected:
     
    	// Generated message map functions
    	//{{AFX_MSG(CFormulaire)
    	afx_msg void OnButtonEcris();
    	//}}AFX_MSG
    	DECLARE_MESSAGE_MAP()
    };
     
     
     
    //{{AFX_INSERT_LOCATION}}
    // Microsoft Visual C++ will insert additional declarations immediately before the previous line.
     
     
     
     
     
    #endif // !defined(AFX_FORMULAIRE_H__E07E9636_6FE5_44E6_93CE_55E413D9ED2F__INCLUDED_)

  2. #2
    Rédacteur
    Avatar de 3DArchi
    Profil pro
    Inscrit en
    Juin 2008
    Messages
    7 634
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juin 2008
    Messages : 7 634
    Par défaut
    Bonjour,
    Il doit te manquer DECLARE_DYNCREATE(CFormulaire) dans la déclaration de ta classe et IMPLEMENT_DYNCREATE(CFormulaire, ClasseDeBase) dans l'implémentation.
    Pour faire une application MDI basée sur un formulaire, CFormulaire doit dériver de CFormView et non de CDialog. Le principe est ensuite le même.
    N'hésites pas à aller faire un tour sur les tutos des MFC.

  3. #3
    Membre averti
    Profil pro
    Inscrit en
    Octobre 2008
    Messages
    19
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Octobre 2008
    Messages : 19
    Par défaut
    3DArchi problème résolu merci
    nina

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. Réponses: 7
    Dernier message: 11/01/2007, 20h49
  2. Question sur MFC DIALOG BASED
    Par beb30 dans le forum MFC
    Réponses: 10
    Dernier message: 20/04/2006, 16h30
  3. Réponses: 6
    Dernier message: 15/03/2006, 15h38
  4. [MFC]Application basée sur des boites de dialogue
    Par -=Spoon=- dans le forum MFC
    Réponses: 2
    Dernier message: 24/08/2005, 11h55
  5. Formulaire avec liste basée sur une autre table
    Par sabotage dans le forum Langage SQL
    Réponses: 6
    Dernier message: 10/08/2005, 13h43

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