Partager via


Manipulation du contrôle d'info-bulle

La classe CToolTipCtrl met à disposition un groupe de fonctions membres qui contrôlent les différents attributs de l'objet CToolTipCtrl ainsi que ceux de la fenêtre d'info-bulle.

Les durées initiales, instantanées et de réaffichage des fenêtres d’info-bulle peuvent être définies et récupérées avec des appels à GetDelayTime et SetDelayTime.

Modifiez l’apparence des fenêtres d’info-bulle avec les fonctions suivantes :

  • GetMargin et SetMargin Permettent de récupérer et de définir la largeur entre la bordure de l’info-bulle et le texte de l’info-bulle.

  • GetMaxTipWidth et SetMaxTipWidth Permettent de récupérer et de définir la largeur maximale de la fenêtre d’info-bulle.

  • GetTipBkColor et SetTipBkColor Permettent de récupérer et de définir la couleur d’arrière-plan de la fenêtre d'info-bulle.

  • GetTipTextColor et SetTipTextColor Permettent de récupérer et de définir la couleur du texte de la fenêtre d'info-bulle.

Pour que le contrôle de l’info-bulle soit averti des messages importants, tels que les messages WM_LBUTTONXXX, vous devez relayer les messages à votre contrôle info-bulle. La meilleure méthode pour ce relais consiste à effectuer un appel à CToolTipCtrl ::RelayEvent, dans la PreTranslateMessage fonction de la fenêtre propriétaire. L'exemple suivant illustre une méthode possible (en supposant que le contrôle de l’info-bulle s’appelle m_ToolTip) :

BOOL CMyDialog::PreTranslateMessage(MSG* pMsg)
{
   if (pMsg->message == WM_LBUTTONDOWN ||
      pMsg->message == WM_LBUTTONUP ||
      pMsg->message == WM_MOUSEMOVE)
   {
      m_ToolTipCtrl.RelayEvent(pMsg);
   }

   return CDialog::PreTranslateMessage(pMsg);
}

Pour supprimer une fenêtre d'info-bulle immédiatement, appelez la fonction membre Pop.

Voir aussi

Utilisation de CToolTipCtrl
Contrôles