Problème avec Tooltip!
Publié : dim. 13/nov./2005 15:13
Ce code ne fonctionne sur XP qu'avec les thèmes et je ne comprends pas pourquoi!
Ne me proposez pas de Lib, ce n'est pas là mon Pb!

Ne me proposez pas de Lib, ce n'est pas là mon Pb!
Code : Tout sélectionner
#TTF_TRANSPARENT=$100
#TTF_TRACK=$20
#TTF_ABSOLUTE=$80
Global hToolTip,ti.TOOLINFO
Procedure CreateToolTip(hParent)
icex.INITCOMMONCONTROLSEX
ti.TOOLINFO
icex\dwSize = SizeOf(icex)
icex\dwICC = #ICC_WIN95_CLASSES
InitCommonControlsEx_(@icex)
sczTipText.s="Texte"
sczTipTitle.s="Title"
hToolTip = CreateWindowEx_(#WS_EX_TOPMOST, "ToolTips_Class32", "",#WS_POPUP| #TTS_NOPREFIX | #TTS_ALWAYSTIP,#CW_USEDEFAULT, #CW_USEDEFAULT,#CW_USEDEFAULT, #CW_USEDEFAULT,#Null,0, GetModuleHandle_(0),#Null)
ti\cbSize = SizeOf(TOOLINFO)
ti\uFlags = #TTF_IDISHWND | #TTF_TRACK | #TTF_ABSOLUTE ;| #TTF_TRANSPARENT
ti\hwnd = hParent
ti\uId = hParent
ti\hinst = GetModuleHandle_(0)
ti\lpszText = @sczTipText
SendMessage_(hToolTip,#TTM_ADDTOOL,0,@ti)
SendMessage_(hToolTip, #TTM_SETMAXTIPWIDTH, 0, 300)
If sczTipTitle>""
SendMessage_(hToolTip, #TTM_SETTITLE, 1, sczTipTitle)
EndIf
SendMessage_(hToolTip,#TTM_TRACKACTIVATE,1,@ti)
EndProcedure
If OpenWindow(0, 100, 100, 400, 300, #PB_Window_SystemMenu | #PB_Window_TitleBar, "BallonTip")
CreateToolTip(WindowID(0))
Repeat
EventID.l=WaitWindowEvent()
Select EventID
Case #WM_MOUSEMOVE
point.POINT\x=EventlParam()& $FFFF
point.POINT\y=EventlParam() >>16
ClientToScreen_(WindowID(0),@point)
SendMessage_(hToolTip, #TTM_TRACKPOSITION, 0,((point\y+14)<<16)+point\x+14)
EndSelect
Until EventID = #PB_EventCloseWindow
EndIf
End