Tooltip

Vous avez développé un logiciel en PureBasic et vous souhaitez le faire connaitre ?
Le Soldat Inconnu
Messages : 4312
Inscription : mer. 28/janv./2004 20:58
Localisation : Clermont ferrand OU Olsztyn
Contact :

Tooltip

Message par Le Soldat Inconnu »

Ah mon dieu, un revenant :roll:
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
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. ++
Je ne suis pas à moitié Polonais mais ma moitié est polonaise ... Vous avez suivi ?

[Intel quad core Q9400 2.66mhz, ATI 4870, 4Go Ram, XP (x86) / 7 (x64)]
Dr. Dri
Messages : 2527
Inscription : ven. 23/janv./2004 18:10

Message par Dr. Dri »

Bon bah ce fut bref mais on y gagne un code ^^

Dri :)
Dräc
Messages : 526
Inscription : dim. 29/août/2004 0:45

Re: Tooltip

Message par Dräc »

Le Soldat Inconnu a écrit :Ah mon dieu, un revenant :roll:
....
Voila, le passage fut cours. ++
C'était pour Halloween :D
bernard13
Messages : 1221
Inscription : mer. 05/janv./2005 21:30

Message par bernard13 »

coucou Régis tu va bien ?
ça fait plaisir de te voir

merci pour ta lib ...
Répondre