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 :

problem d'affichage de boîte de dialog


Sujet :

MFC

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre averti
    Profil pro
    Inscrit en
    Juin 2007
    Messages
    17
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juin 2007
    Messages : 17
    Par défaut problem d'affichage de boîte de dialog
    Bonjour,
    Je crée une boîte de dialog avec une nouvelle classe dédier à celle-ci. Dans cette boîte j'ai un simple Combobox. Mon projet est un SDI et il se compile correctement. Quand j'instencie un objet de cette classe dans un des membres de mon CDocument, et que je veux afficher la fenêtre avec DoModal(). J'ai la fenêtre de (MS VC++ Debug Library, Debug Assertion Faild File: afxwin2.inl)? J'ai aussi cette fenêtre d'Assetion Failed quand je veux rajouter un membre à ma liste de Combobox?
    Avez-vous une idée pourquoi ça m'arrive?
    Quand je regard l'instance dans une session de débugage le hWnd est à 0x00000000, est-ce normal?

    Merci d'avance pour votre aide.

  2. #2
    Membre confirmé
    Inscrit en
    Janvier 2006
    Messages
    165
    Détails du profil
    Informations forums :
    Inscription : Janvier 2006
    Messages : 165
    Par défaut
    bonjour
    Rassures toi que tu travailles avec le combo box après l'apppel de CDialog::OnInitDialog, car c'est dans cette fonction de la classe de base que tous les controles sont crées.

  3. #3
    Membre averti
    Profil pro
    Inscrit en
    Juin 2007
    Messages
    17
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juin 2007
    Messages : 17
    Par défaut
    Bonjour,

    En effet, il n y va pas dans le OnInitDilaog à l'instanciation, pourtant dans la classWizard de ma class de dialog le Message WM_INITDIALOG est bien activé, et il est bien dérigé vers la fonction membre OnInitDialog. A ton avis pourquoi?

  4. #4
    Membre émérite
    Avatar de Spout
    Profil pro
    Ingénieur systèmes et réseaux
    Inscrit en
    Février 2007
    Messages
    904
    Détails du profil
    Informations personnelles :
    Âge : 40
    Localisation : France, Val d'Oise (Île de France)

    Informations professionnelles :
    Activité : Ingénieur systèmes et réseaux

    Informations forums :
    Inscription : Février 2007
    Messages : 904
    Par défaut
    Etant donné que
    Citation Envoyé par MSDN
    This message is sent to the dialog box during the Create, CreateIndirect, or DoModal calls, which occur immediately before the dialog box is displayed.
    Ce n'est pas normal si il ne passe pas dans le OnInitDialog.
    Ta classe hérite bien de CDialog?
    Montre nous ton code qu'on puisse essayer de voir et/ou reproduire l'erreur.

  5. #5
    Membre averti
    Profil pro
    Inscrit en
    Juin 2007
    Messages
    17
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juin 2007
    Messages : 17
    Par défaut
    Oui biensur que c'est de CDialog.
    voici mon .h

    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
     
    class CDeviceMonitor : public CDialog
    {
    // Construction
    public:
    	CDeviceMonitor(CWnd* pParent = NULL);   // standard constructor
     
    // Dialog Data
    	//{{AFX_DATA(CDeviceMonitor)
     
    	enum { IDD = IDD_DIALOG1 };
    	CComboBox	m_devicelist;
     
    	//}}AFX_DATA
     //   CWMTempsReelDoc* GetDocument();
        void Initialize(void);
    // Overrides
    	// ClassWizard generated virtual function overrides
    	//{{AFX_VIRTUAL(CDeviceMonitor)
    	protected:
    	virtual void DoDataExchange(CDataExchange* pDX);    // DDX/DDV support
    	//}}AFX_VIRTUAL
     
    // Implementation
    protected:
     
    	// Generated message map functions
    	//{{AFX_MSG(CDeviceMonitor)
    		virtual BOOL OnInitDialog();
    	//}}AFX_MSG
    	DECLARE_MESSAGE_MAP()
    };
     
     
     
    //{{AFX_INSERT_LOCATION}}
    // Microsoft Visual C++ will insert additional declarations immediately before the previous line.
     
    #endif // !defined(AFX_DEVICEMONITOR_H__DF0C2128_CA9D_4330_946D_CF8B10C3E761__INCLUDED_)
    et le .cpp
    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
    class CDeviceMonitor : public CDialog
    {
    // Construction
    public:
    	CDeviceMonitor(CWnd* pParent = NULL);   // standard constructor
     
    // Dialog Data
    	//{{AFX_DATA(CDeviceMonitor)
     
    	enum { IDD = IDD_DIALOG1 };
    	CComboBox	m_devicelist;
     
    	//}}AFX_DATA
     //   CWMTempsReelDoc* GetDocument();
        void Initialize(void);
    // Overrides
    	// ClassWizard generated virtual function overrides
    	//{{AFX_VIRTUAL(CDeviceMonitor)
    	protected:
    	virtual void DoDataExchange(CDataExchange* pDX);    // DDX/DDV support
    	//}}AFX_VIRTUAL
     
    // Implementation
    protected:
     
    	// Generated message map functions
    	//{{AFX_MSG(CDeviceMonitor)
    		virtual BOOL OnInitDialog();
    	//}}AFX_MSG
    	DECLARE_MESSAGE_MAP()
    };
     
     
     
    //{{AFX_INSERT_LOCATION}}
    // Microsoft Visual C++ will insert additional declarations immediately before the previous line.
     
    #endif // !defined(AFX_DEVICEMONITOR_H__DF0C2128_CA9D_4330_946D_CF8B10C3E761__INCLUDED_)
    J'espère que ça aide, Merci

  6. #6
    Membre averti
    Profil pro
    Inscrit en
    Juin 2007
    Messages
    17
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juin 2007
    Messages : 17
    Par défaut
    pardon mon .cpp est
    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
     
     
    // CDeviceMonitor dialog
     
     
    CDeviceMonitor::CDeviceMonitor(CWnd* pParent /*=NULL*/)
    	: CDialog(CDeviceMonitor::IDD, pParent)
    {
    	//{{AFX_DATA_INIT(CDeviceMonitor)
    	//}}AFX_DATA_INIT
    }
     
     
    void CDeviceMonitor::DoDataExchange(CDataExchange* pDX)
    {
    	CDialog::DoDataExchange(pDX);
    	//{{AFX_DATA_MAP(CDeviceMonitor)
    	DDX_Control(pDX, IDC_COMBO1, m_devicelist);
    	//}}AFX_DATA_MAP
    }
     
     
    BEGIN_MESSAGE_MAP(CDeviceMonitor, CDialog)
    	//{{AFX_MSG_MAP(CDeviceMonitor)
    		// NOTE: the ClassWizard will add message map macros here
    	//}}AFX_MSG_MAP
    END_MESSAGE_MAP()
     
     
    /////////////////////////////////////////////////////////////////////////////
    // CDeviceMonitor message handlers
     
    BOOL CDeviceMonitor::OnInitDialog() 
    {
    	CDialog::OnInitDialog();
     
     
    	return TRUE;
    }

Discussions similaires

  1. Probleme d'affichage d'une dialog dans uneApplet
    Par dot-_-net dans le forum Applets
    Réponses: 0
    Dernier message: 13/09/2009, 11h14
  2. [VB.NET] Probleme d'affichage de controle
    Par mic56 dans le forum Windows Forms
    Réponses: 5
    Dernier message: 09/06/2004, 15h03
  3. xml-xsl-fo : probleme d'affichage d'un tableau
    Par clindoeil dans le forum XSL/XSLT/XPATH
    Réponses: 5
    Dernier message: 12/12/2003, 12h46
  4. [langage] Problème d'affichage
    Par marcoss dans le forum Langage
    Réponses: 3
    Dernier message: 29/08/2003, 13h05
  5. IE [Applet] Plug-in problème d'affichage
    Par Tonton Luc dans le forum JBuilder
    Réponses: 4
    Dernier message: 19/06/2003, 08h28

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