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] utilisation de DelTool


Sujet :

MFC

  1. #1
    Membre confirm�
    Profil pro
    Inscrit en
    Avril 2006
    Messages
    69
    D�tails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Avril 2006
    Messages : 69
    Par d�faut [MFC] utilisation de DelTool
    salut, pour un programme que je realise, je souhaite faire apparaitre une info bulle lorsque j'enfonce le click droit et ensuite, la faire disparaitre si je relache le click droit.

    J'ai bien reussi a faire apparaitre l'info bulle, mais lorsque je relache le bouton droit, elle ne disparait pas, alors que j'utilise la fonction DelTool.
    est ce que quelqu'un pourrait m'aider a resoudre mon probleme.

    je vous donne mon code pour l'affichage de l'info bulle pour voir si vous trouver un probleme.

    dans mon view.h
    Code : S�lectionner tout - Visualiser dans une fen�tre � part
    1
    2
    3
     
    CToolTipCtrl* tool ;     //On definie une variable pour l'info bulle 
     TOOLINFO ti;            //ti recevra les caracteristiques du message de l'info bulle
    dans le constructeur de la classe View:
    Code : S�lectionner tout - Visualiser dans une fen�tre � part
    1
    2
    3
     
    text=new char[256]; //la taille max. du message qui sera affiché dans ta tooltip
     tool=new CToolTipCtrl();
    dans OnInitialUpdate():
    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
     
        tool->Create(this,TTS_ALWAYSTIP|TTF_TRACK|TTF_ABSOLUTE|TTF_IDISHWND   );
     
     //taille de la structure en bytes
        ti.cbSize = sizeof(TOOLINFO);
     
     //Commande l'affichage de la tooltip
        ti.uFlags = TTF_IDISHWND | TTF_TRACK | TTF_ABSOLUTE;
     
     //Correspond a l'handle de la fenetre
        ti.hwnd   = this->m_hWnd;
        ti.uId    = (UINT)AfxGetMainWnd()->m_hWnd;
        ti.hinst  = AfxGetInstanceHandle();
        ti.lpszText  = LPSTR_TEXTCALLBACK;
        ti.rect.left = ti.rect.top = ti.rect.bottom = ti.rect.right = 0;
    dans la fonction OnRButtonDown:
    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
     
     //fonctions pour specifier les message windows
     tool->SendMessage(TTM_ADDTOOL,0,(LPARAM)&ti);
        tool->SendMessage(TTM_TRACKACTIVATE,(WPARAM)true,(LPARAM)&ti);
        tool->SendMessage(TTM_SETMAXTIPWIDTH,0,(LPARAM)SHRT_MAX);
     
        tool->EnableTrackingToolTips(true);
        tool->EnableToolTips(true);
     //On active l'info bulle
        tool->Activate(true);
     
     //On affiche la'info bulle avec son texte
     sprintf(text,"ng=%d",ng);
        CPoint p=point;
        ClientToScreen(&p);
        tool->SendMessage(TTM_TRACKPOSITION,0,(LPARAM)MAKELPARAM(p.x+20,p.y+20));
     //le +20 c'est à décaler l'affichage à côté du curseur et pas pile dessous
    dans la fonction OnRButtonUp:
    Code : S�lectionner tout - Visualiser dans une fen�tre � part
    1
    2
     
    tool->DelTool(this,0);
    je ne vois pas l'erreur qui fait que mon info bulle ne disparraisent pas.
    Est ce que quelqu'un saurait?

  2. #2
    r0d
    r0d est d�connect�
    Membre exp�riment�

    Homme Profil pro
    D�veloppeur informatique
    Inscrit en
    Ao�t 2004
    Messages
    4 295
    D�tails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Ain (Rh�ne Alpes)

    Informations professionnelles :
    Activit� : D�veloppeur informatique

    Informations forums :
    Inscription : Ao�t 2004
    Messages : 4 295
    Billets dans le blog
    2
    Par d�faut
    Bonsoir,

    est-ce que tu passe dans OnRButtonUp lors de l'execution?

  3. #3
    Membre confirm�
    Profil pro
    Inscrit en
    Avril 2006
    Messages
    69
    D�tails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Avril 2006
    Messages : 69
    Par d�faut
    vu que je suis en MFC, la fonction ce lance automatiquement des que je relache la bouton droit de la souris. de plus l'erreur j'ai essayer d'utiliser DelTool dans la m�me fonction ou je l'affiche, or l'affichage marchait, mais pas la disparition de l'info bulle, donc je sais pas pourquoi la fonction DelTool ne marche pas.

  4. #4
    Membre confirm�
    Profil pro
    Inscrit en
    Avril 2006
    Messages
    69
    D�tails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Avril 2006
    Messages : 69
    Par d�faut
    Est ce que quelq'un a une solution a mon probleme, parce que la je suis vraiment coincer!!

  5. #5
    Membre exp�riment�
    Avatar de Nicolas Bauland
    Profil pro
    Inscrit en
    Novembre 2004
    Messages
    119
    D�tails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Novembre 2004
    Messages : 119
    Par d�faut
    Ce qui suit n'est qu'une hypothese car je n'ai jamais utiliser ce type de controle mais d'apres ce que j'ai compris de la doc, tu n'appelles pas la bonne methode pour effacer le tooltip. Quand tu dis effacer, je pense que cela signifie effacer de l'ecran (methode POP vraisemblablement), alors que ta methode (DelTool) efface le tooltip de la liste des tooltip activables.

    J'espere que ce j'ecris est assez clair ...

  6. #6
    Membre confirm�
    Profil pro
    Inscrit en
    Avril 2006
    Messages
    69
    D�tails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Avril 2006
    Messages : 69
    Par d�faut
    je venais de trouver la reponse tout seul, mais merci quand meme pour ta reponse

+ R�pondre � la discussion
Cette discussion est r�solue.

Discussions similaires

  1. [MFC] Utilisation de la classe CSocket
    Par Sh4rk dans le forum MFC
    R�ponses: 3
    Dernier message: 01/06/2005, 16h42
  2. R�ponses: 1
    Dernier message: 10/05/2005, 14h31
  3. [MFC] utilisation de printPreview
    Par Tsunamis dans le forum MFC
    R�ponses: 7
    Dernier message: 05/04/2005, 10h14
  4. [MFC] Utilisation de sockets
    Par keupon dans le forum MFC
    R�ponses: 2
    Dernier message: 28/01/2004, 14h37
  5. [MFC] Utilisation Drivers
    Par LAPLACE dans le forum MFC
    R�ponses: 4
    Dernier message: 21/12/2002, 10h29

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