Problème avec tooltips

Résolu
Signaler
Messages postés
557
Date d'inscription
dimanche 25 septembre 2005
Statut
Membre
Dernière intervention
10 mai 2014
-
Messages postés
557
Date d'inscription
dimanche 25 septembre 2005
Statut
Membre
Dernière intervention
10 mai 2014
-
Bonjour,

Je recherche un moyen permettant de créer un tooltip pouvant contenir plusieurs lignes.
Les tooltips que je crée actuellement n'occupent qu'une seule ligne.

Comment faire un tooltip s'étendant sur plusieurs lignes?
Comment lui montrer qu'il doit marquer un retour chariot?
Avec '\n'?

En C API Win32...

<hr />

Merci d'avance et à bientôt.

Nico

L'entraide est une source inépuisable...

6 réponses

Messages postés
1910
Date d'inscription
vendredi 18 juin 2004
Statut
Modérateur
Dernière intervention
14 novembre 2014
13
Salut,
Je pense que les ToolTips ne prennent pas en charge les "\n" ou "\r" pour passer à la ligne suivante. Mais tu peux limiter la largeur du ToolTip pour le forcer à afficher le texte en plusieurs lignes:
SendMessage(hwndToolTip,TTM_SETMAXTIPWIDTH ,0,100);
Le dernier paramètre étant la largeur en pixels à donner au ToolTip.
Messages postés
1910
Date d'inscription
vendredi 18 juin 2004
Statut
Modérateur
Dernière intervention
14 novembre 2014
13
Tu peux faire:
#define TTM_SETMAXTIPWIDTH     0x0418

Pour profiter des dernières fonctionnalités, tu peux remplacer le fichier comctl32.dll situé dans le dossier system32 par une version plus récente.
Messages postés
557
Date d'inscription
dimanche 25 septembre 2005
Statut
Membre
Dernière intervention
10 mai 2014
4
Merci beaucoup pour cette réponse...









Nico
Messages postés
557
Date d'inscription
dimanche 25 septembre 2005
Statut
Membre
Dernière intervention
10 mai 2014
4
Bonjour,


Juste un problème avec cette technique :
Cette technique necessite : Windows 2000, Windows NT 4.0 with Internet Explorer 3.0, Windows 98, Windows 95 with Internet Explorer 3.0. Ce système d'exploitation étant "récent", l'utilisation de cette technique empêcherais l'exécution de mon application sur un Windows 98.
cf. http://msdn2.microsoft.com/en-us/library/ms650565.aspx

De plus DEV C++ ne connait pas TTM_SETMAXTIPWIDTH : `TTM_SETMAXTIPWIDTH' undeclared (first use in this function) .
Comment faire pour que DEV-C++ le reconnaisse?
 <hr />Merci d'avance et à bientôt.

Nico
Messages postés
557
Date d'inscription
dimanche 25 septembre 2005
Statut
Membre
Dernière intervention
10 mai 2014
4
Bonjour,

Merci ça marche parfaitement bien.

Je cherche maintenant à savoir comment "déclarer"* :
 - TTM_SETTIPBKCOLOR
 - TTM_SETTIPTEXTCOLOR
*Exemple : #define TTM_SETMAXTIPWIDTH     0x0418

Où peut-on trouver ces informations?

<hr />

Merci d'avance et à bientôt.

Nico
Messages postés
557
Date d'inscription
dimanche 25 septembre 2005
Statut
Membre
Dernière intervention
10 mai 2014
4
Bonjour,

C'est bon,
j'ai découvert le moyen de découvrir ces informations :
 - j'ai ouvert commctrl.h
 - j'ai recherché TTM_SETTIPBKCOLOR et TTM_SETTIPTEXTCOLOR
 - et est trouvé :
    #define TTM_SETTIPBKCOLOR   (WM_USER+19)
  #define TTM_SETTIPTEXTCOLOR (WM_USER+20)
 - j'ai ensuite mis ces informations dans mon projet, et ça marche

<hr />




Merci racpp et à bientôt.






Nico