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 :

bug au demarrage d'un dialog (cursor)


Sujet :

MFC

Vue hybride

____22 bug au demarrage d'un dialog... 20/07/2009, 16h48
ram-0000 Et c'est quoi le bug ? On... 20/07/2009, 17h32
____22 si tu veux j'ai ça : si je... 21/07/2009, 11h31
stephdim salut, déjà 1er problème,... 21/07/2009, 23h26
____22 merci le projet est compilé... 22/07/2009, 10h33
Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre éclairé
    Profil pro
    Inscrit en
    Décembre 2007
    Messages
    252
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Décembre 2007
    Messages : 252
    Par défaut bug au demarrage d'un dialog (cursor)
    j'ai ce bug à chaque fois que j'execute mon programme
    c'est sans gravité , si je fais continue le programme marche derriere, mais j'aimerais bien le supprimer
    merci beaucoup

    http://img32.imageshack.us/img32/8262/bugvwl.png

  2. #2
    Rédacteur

    Avatar de ram-0000
    Homme Profil pro
    Consultant en sécurité
    Inscrit en
    Mai 2007
    Messages
    11 517
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 62
    Localisation : France, Haute Garonne (Midi Pyrénées)

    Informations professionnelles :
    Activité : Consultant en sécurité
    Secteur : High Tech - Opérateur de télécommunications

    Informations forums :
    Inscription : Mai 2007
    Messages : 11 517
    Par défaut
    Et c'est quoi le bug ? On doit le deviner ?
    Raymond
    Vous souhaitez participer à la rubrique Réseaux ? Contactez-moi

    Cafuro Cafuro est un outil SNMP dont le but est d'aider les administrateurs système et réseau à configurer leurs équipements SNMP réseau.
    e-verbe Un logiciel de conjugaison des verbes de la langue française.

    Ma page personnelle sur DVP
    .

  3. #3
    Membre éclairé
    Profil pro
    Inscrit en
    Décembre 2007
    Messages
    252
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Décembre 2007
    Messages : 252
    Par défaut
    si tu veux j'ai ça :
    si je clique ignorer derrier ça marche

    mais si je pouvais supprimer ce bug ce serait bien



    l'erreur vient peut-etre du cursor d'après le message sur la 1ere image
    les seuls appel dans mon programme sont

    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
    53
     
    ON_WM_SETCURSOR() //dans le begin message map
    ...
     
    HCURSOR CLEMonitorDlg::OnQueryDragIcon()
    {
    	return (HCURSOR) m_hIcon;
    }
    ........
     
    BOOL CLEMonitorDlg::PreTranslateMessage(MSG* pMsg) 
    {
        // Hide the tooltip on keyboard and mouse button events
        HIDE_TOOL_TIP_ON_KB_AND_MB_EVENTS(m_ttce)
     
    	// Double clicking in node list
    	if (pMsg->hwnd == m_lstNode.GetSafeHwnd()) 
    	{
     
    		// Left double-clicking copies the list entry to the Update fields
    		// and the node id field
    		if (pMsg->message == WM_LBUTTONDBLCLK) 
    		{
    			int n = m_lstNode.GetCurSel();
    			if (n >= 0) 
    			{
    				m_nNodeId = m_lstNode.GetItemData(n);
    			}
    		}
    	}
     
    	return CDialog::PreTranslateMessage(pMsg);
    }
     
    //-----------------------------------------------------------------------------
    /** \brief Handles tool tip text for all controls
     *
     *  The macros used in this function is defined in the class CToolTipCtrlEx.
     *  The text macros is defined in the header file ToolTipText.h
     */
    //-----------------------------------------------------------------------------
    BOOL CLEMonitorDlg::OnSetCursor(CWnd* pWnd, UINT nHitTest, UINT message) 
    {
        BEGIN_TOOL_TIP_MAP(m_ttce) 
    	{
            REG_TOOL_TIP(m_ttce, m_frmSendMessage, pWnd, TIP_SEND_MESSAGE)
    		REG_TOOL_TIP(m_ttce, m_frmMessageLog, pWnd, TIP_LOG_MESSAGE)
    		REG_TOOL_TIP(m_ttce, m_frmNodeList, pWnd, TIP_NODE_LIST)
    		REG_TOOL_TIP(m_ttce, *m_pCmbComPort, pWnd, TIP_CMB_COM_PORT)
        } END_TOOL_TIP_MAP(m_ttce)
     
    	return CDialog::OnSetCursor(pWnd, nHitTest, message);
    }

  4. #4
    Membre chevronné Avatar de stephdim
    Profil pro
    Inscrit en
    Août 2007
    Messages
    462
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Août 2007
    Messages : 462
    Par défaut
    salut,

    déjà 1er problème, le source affiché dans le debugger ne correspond pas à une version MFC42 (VC6) -> la classe _AFX_MOUSEANCHORWND n'existait pas à cette époque

    ensuite, le call stack indique que c'est dans CScrollView::OnPrepareDC()

    et là, il y a un certain nombre d'ASSERT ... procure toi les bons sources MFC

    @+

  5. #5
    Membre éclairé
    Profil pro
    Inscrit en
    Décembre 2007
    Messages
    252
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Décembre 2007
    Messages : 252
    Par défaut
    merci
    le projet est compilé en VC++6, mais j'ai utilisé le debugger de VS2005
    sinon si l'erreur vient du CScrollView::onpreparedc
    c'est bizarre parce que je lance effectivement une CScrollView à l'initDialog du dialogue principal

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    //CCreateContext pContext;
    	CWnd* pFrameWnd = this;
    	pContext.m_pCurrentDoc = new CMyDocument;
    	pContext.m_pNewViewClass = RUNTIME_CLASS(CMyVw);
    	pView =(CMyVw *) ((CFrameWnd*)pFrameWnd)->CreateView(&pContext);
    	ASSERT(pView);
    	pView->ShowWindow(SW_NORMAL);
    	CRect rectWindow;
    	//GetWindowRect(rectWindow);
    	rectWindow.top=400;
    	rectWindow.bottom=800;
    	rectWindow.left=10;
    	rectWindow.right=410;
    	pView->MoveWindow(rectWindow);
    comme ça

    par contre ma CScrollView ne (re)définit pas de OnPrepareDC
    est-ce que ASSERT(pView) appelle OnPrepareDC?

  6. #6
    Membre chevronné Avatar de stephdim
    Profil pro
    Inscrit en
    Août 2007
    Messages
    462
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Août 2007
    Messages : 462
    Par défaut
    c'est dans VIEWSCRL.CPP ligne 134, comme indiqué dans la boite de dialogue
    reste à consutler les sources MFC (les bons, ceux de VC6) pour voir pourquoi ...

    @+

Discussions similaires

  1. bug au demarrage de le 'application
    Par hi-wave dans le forum Windows Forms
    Réponses: 0
    Dernier message: 03/07/2015, 18h14
  2. bug demarrage GlassFish
    Par cotede2 dans le forum Glassfish et Payara
    Réponses: 4
    Dernier message: 09/04/2008, 10h13
  3. Bug demarrage (écran bleu) suite au SP1
    Par Bouki dans le forum Windows Vista
    Réponses: 0
    Dernier message: 24/03/2008, 10h24
  4. bug du programme apres utilisation de dialog
    Par avogadro dans le forum Delphi
    Réponses: 13
    Dernier message: 07/06/2006, 15h33
  5. [Swing] bug avec Dialog
    Par shinkyo dans le forum AWT/Swing
    Réponses: 6
    Dernier message: 01/03/2006, 14h29

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