Tooltip
Publié : mer. 01/nov./2006 16:31
Ah mon dieu, un revenant
Il est vrai que ca fait un baille que je ne suis pas passé sur le forum, toutes mes excuses mais je n'ai pas vraiment eu le temps de me plonger dessus. Pas que je ne programme plus, au contraire ....
Donc voila, j'ai ajouté une petite librairie sur mon site pour personnaliser vos tooltips :
- Couleur
- Titre et icone sur le tooltip
- Changer le texte, le titre ou l'icone
- changer la largeur du tooltip
Mais ce qui est intéressant, c'est de pour voir faire des tooltips sur plusieurs lignes
donc voir sur mon site (librairie + exemple)
et sinon, le code de la librairie est pas méchant, je le mets ici :
Sinon, j'en profite pour dire que j'ai refais une passe sur mes librairies, notamment ButtonImageEx (un joli bug retiré) et ToolBarXP
Voila, le passage fut cours. ++

Il est vrai que ca fait un baille que je ne suis pas passé sur le forum, toutes mes excuses mais je n'ai pas vraiment eu le temps de me plonger dessus. Pas que je ne programme plus, au contraire ....
Donc voila, j'ai ajouté une petite librairie sur mon site pour personnaliser vos tooltips :
- Couleur
- Titre et icone sur le tooltip
- Changer le texte, le titre ou l'icone
- changer la largeur du tooltip
Mais ce qui est intéressant, c'est de pour voir faire des tooltips sur plusieurs lignes
donc voir sur mon site (librairie + exemple)
et sinon, le code de la librairie est pas méchant, je le mets ici :
Code : Tout sélectionner
ProcedureDLL.l ToolTip_Create(GadgetID, Text.s) ; Create tooltip
ToolTipID = CreateWindowEx_(0, "ToolTips_Class32", "", #WS_POPUP | #TTS_NOPREFIX, 0, 0, 0, 0, GadgetID, 0, GetModuleHandle_(0), 0)
SendMessage_(ToolTipID, #TTM_SETTIPTEXTCOLOR, GetSysColor_(#COLOR_INFOTEXT), 0)
SendMessage_(ToolTipID, #TTM_SETTIPBKCOLOR, GetSysColor_(#COLOR_INFOBK), 0)
SendMessage_(ToolTipID, #TTM_SETMAXTIPWIDTH, 0, 180)
Balloon.TOOLINFO\cbSize = SizeOf(TOOLINFO)
Balloon\uFlags = #TTF_IDISHWND | #TTF_SUBCLASS
Balloon\hWnd = GadgetID
Balloon\uId = GadgetID
Balloon\lpszText = @Text
SendMessage_(ToolTipID, #TTM_ADDTOOL, 0, Balloon)
ProcedureReturn ToolTipID
EndProcedure
ProcedureDLL.l ToolTip_Create2(GadgetID, Text.s, Title.s, Icon)
ToolTipID = CreateWindowEx_(0, "ToolTips_Class32", "", #WS_POPUP | #TTS_NOPREFIX, 0, 0, 0, 0, GadgetID, 0, GetModuleHandle_(0), 0)
SendMessage_(ToolTipID, #TTM_SETTIPTEXTCOLOR, GetSysColor_(#COLOR_INFOTEXT), 0)
SendMessage_(ToolTipID, #TTM_SETTIPBKCOLOR, GetSysColor_(#COLOR_INFOBK), 0)
SendMessage_(ToolTipID, #TTM_SETMAXTIPWIDTH, 0, 180)
Balloon.TOOLINFO\cbSize = SizeOf(TOOLINFO)
Balloon\uFlags = #TTF_IDISHWND | #TTF_SUBCLASS
Balloon\hWnd = GadgetID
Balloon\uId = GadgetID
Balloon\lpszText = @Text
SendMessage_(ToolTipID, #TTM_ADDTOOL, 0, Balloon)
If Title > ""
SendMessage_(ToolTipID, #TTM_SETTITLE, Icon, @Title)
EndIf
ProcedureReturn ToolTipID
EndProcedure
ProcedureDLL ToolTip_SetText(ToolTipID, GadgetID, Text.s) ; Set tooltip text, title and icon
Balloon.TOOLINFO\cbSize = SizeOf(TOOLINFO)
Balloon\uFlags = #TTF_IDISHWND | #TTF_SUBCLASS
Balloon\hWnd = GadgetID
Balloon\uId = GadgetID
Balloon\lpszText = @Text
SendMessage_(ToolTipID, #TTM_SETTOOLINFO, 0, Balloon)
EndProcedure
ProcedureDLL ToolTip_SetText2(ToolTipID, GadgetID, Text.s, Title.s, Icon)
Balloon.TOOLINFO\cbSize = SizeOf(TOOLINFO)
Balloon\uFlags = #TTF_IDISHWND | #TTF_SUBCLASS
Balloon\hWnd = GadgetID
Balloon\uId = GadgetID
Balloon\lpszText = @Text
SendMessage_(ToolTipID, #TTM_SETTOOLINFO, 0, Balloon)
If Title > ""
SendMessage_(ToolTipID, #TTM_SETTITLE, Icon, @Title)
EndIf
EndProcedure
ProcedureDLL ToolTip_SetWidth(ToolTipID, Width) ; Set tooltip width
SendMessage_(ToolTipID, #TTM_SETMAXTIPWIDTH, 0, Width)
EndProcedure
ProcedureDLL ToolTip_Color(ToolTipID, ColorText, ColorBackGround) ; Set tooltip color
SendMessage_(ToolTipID, #TTM_SETTIPTEXTCOLOR, ColorText, 0)
SendMessage_(ToolTipID, #TTM_SETTIPBKCOLOR, ColorBackGround, 0)
EndProcedure
Voila, le passage fut cours. ++