Tom's Guide > Forum > Programmation > [MFC] utilisation de DelTool

[MFC] utilisation de DelTool

Forum Programmation : [MFC] utilisation de DelTool

TomsGuide.com : 800 000 inscrits répondent à toutes vos questions high-tech et informatique. Pour obtenir de l'aide, inscrivez-vous gratuitement !
Mot :    Pseudo :           
 

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 :
  1. CToolTipCtrl* tool ;    //On definie une variable pour l'info bulle
  2. TOOLINFO ti;            //ti recevra les caracteristiques du message de l'info bulle



dans le constructeur de la classe View:

Code :
  1. text=new char[256]; //la taille max. du message qui sera affiché dans ta tooltip
  2. tool=new CToolTipCtrl();





dans OnInitialUpdate():

Code :
  1. tool->Create(this,TTS_ALWAYSTIP|TTF_TRACK|TTF_ABSOLUTE|TTF_IDISHWND  );
  2. //taille de la structure en bytes
  3.     ti.cbSize = sizeof(TOOLINFO);
  4. //Commande l'affichage de la tooltip
  5.     ti.uFlags = TTF_IDISHWND | TTF_TRACK | TTF_ABSOLUTE;
  6. //Correspond a l'handle de la fenetre
  7.     ti.hwnd  = this->m_hWnd;
  8.     ti.uId    = (UINT)AfxGetMainWnd()->m_hWnd;
  9.     ti.hinst  = AfxGetInstanceHandle();
  10.     ti.lpszText  = LPSTR_TEXTCALLBACK;
  11.     ti.rect.left = ti.rect.top = ti.rect.bottom =    ti.rect.right = 0;



dans la fonction OnRButtonDown:

Code :
  1. //fonctions pour specifier les message windows
  2. tool->SendMessage(TTM_ADDTOOL,0,(LPARAM)&ti);
  3.     tool->SendMessage(TTM_TRACKACTIVATE,(WPARAM)true,(LPARAM)&ti);
  4.     tool->SendMessage(TTM_SETMAXTIPWIDTH,0,(LPARAM)SHRT_MAX)
  5.     tool->EnableTrackingToolTips(true);
  6.     tool->EnableToolTips(true);
  7. //On active l'info bulle
  8.     tool->Activate(true);
  9. //On affiche la'info bulle avec son texte
  10. sprintf(text,"ng=%d",ng);
  11.     CPoint p=point;
  12.     ClientToScreen(&p);
  13.     tool->SendMessage(TTM_TRACKPOSITION,0,(LPARAM)MAKELPARAM(p.x+20,p.y+20));
  14. //le +20 c'est à décaler l'affichage à côté du curseur et pas pile dessous





dans la fonction OnRButtonUp:

Code :
  1. 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?

Liens sponsorisés
Inscrivez-vous ou connectez-vous pour masquer ceci.

Est ce que quelqu'un connait une solution a mon probleme, parsque la, je suis vraiment coincer!! :-(

Répondre à jiraya43
Tom's Guide > Forum > Programmation > [MFC] utilisation de DelTool
Aller à :

Il y a 1185 utilisateurs connus et inconnus. Pour voir la liste des connectés connus, cliquez ici.

Attention

Vous allez répondre sur un sujet resté inactif pendant plus de 6 mois.
Assurez-vous d'apporter des éléments nouveaux à la discussion avant de poursuivre.

Répondre Annuler
Liens