Page 1 sur 1
GadgetToolTip
Publié : lun. 22/oct./2018 19:19
par Jeanmarc
Re Bonjour,
Le TexteGadget est l'un des seuls à ne pas profiter de GadgetToolTip.
C'est dommage, je voulais expliquer différents Textes
JM
Re: GadgetToolTip
Publié : lun. 22/oct./2018 19:32
par Noos88
Pouquoi ne pas utilisé un StringGadget a la place d'un TextGadget
exemple:
Code : Tout sélectionner
If OpenWindow(0,0,0,270,160,"TextGadget",#PB_Window_SystemMenu | #PB_Window_ScreenCentered)
StringGadget(1, 10, 40,250,20,"Gadget texte",#PB_String_ReadOnly|#PB_String_BorderLess)
GadgetToolTip(1,"coucou")
Repeat : Until WaitWindowEvent()=#PB_Event_CloseWindow
EndIf
Re: GadgetToolTip
Publié : lun. 22/oct./2018 19:41
par Christophe
Bonjour,
effectivement un StringGadget ou simplement un ContainerGadget
Code : Tout sélectionner
OpenWindow(0, 0, 0, 322, 150, "ToolTip sur Ligne de Texte", #PB_Window_SystemMenu | #PB_Window_ScreenCentered)
ContainerGadget(0, 10, 10, 50, 20)
TextGadget(1, 0, 5, 40, 20, "le texte")
GadgetToolTip(0,"ToolTip")
CloseGadgetList()
Repeat : Until WaitWindowEvent() = #PB_Event_CloseWindow
Re: GadgetToolTip
Publié : lun. 22/oct./2018 20:37
par Jeanmarc
Merci de répondre,
Non le StringGadget affiche le curseur et même si l'on met ReadOnly. L'affichage est plus grand. Ingérable.
Container ok mais quelle quantité de code pour afficher un simple texte.
Tampis je vais faire autrement
merci quand meme,
JM
Re: GadgetToolTip
Publié : lun. 22/oct./2018 23:29
par Christophe
Si tu as beaucoup de TextGadget, pourquoi ne pas faire une procedure ?
Code : Tout sélectionner
Procedure TextGadgetTip(Gadget, x, y, width, height, Text$, ToolTip$)
Gad = ContainerGadget(#PB_Any, x, y, width, height)
TextGadget(Gadget, 0, 0, width, height, Text$)
GadgetToolTip(Gad, ToolTip$)
CloseGadgetList()
EndProcedure
OpenWindow(0, 0, 0, 300, 200, "Text ToolTip", #PB_Window_SystemMenu | #PB_Window_ScreenCentered)
TextGadgetTip(1, 50, 30, 40, 20,"Texte 1","ToolTip 1")
TextGadgetTip(2, 50, 50, 40, 20,"Texte 2","ToolTip 2")
TextGadgetTip(3, 50, 70, 40, 20,"Texte 3","ToolTip 3")
Repeat
Until WaitWindowEvent() = #PB_Event_CloseWindow
Re: GadgetToolTip
Publié : mar. 23/oct./2018 4:14
par Jeanmarc
Christophe,
Ton code fonctionne très bien.
J'ai fais une interface dont je suis satisfait, présentation et fonctionnement.
Je me suis dit, je vais associer des Tool tip aux TexGadjet, car naïvement cela me semblait évident.
En fait quand j'ajoute un Gadget, je ne connais pas le code qu'il y a derrière et si le fonctionnement ne vas pas être ralenti.
J'ajoute 50 containers.
Je retiens ton idée
Merci,
JM
Re: GadgetToolTip
Publié : mar. 23/oct./2018 8:30
par Christophe
JM
Je ne comprends pas trop ce que tu veux dire par "je ne connais pas le code qu'il y a derrière"
Je pense que tu veux dire "Numéro de Gadget", tu as peut être peur qu'un Container rentre en conflit
avec un de tes Gadgets ? J'ai fais un essai et le premier numéro de mon Container s'elevait à plus de 31000000
donc il y a peu de risque.
En ce qui concerne le ralentissement, je ne pense pas qu'un ToolTip prends beaucoup de ressource.
Re: GadgetToolTip
Publié : mar. 23/oct./2018 11:27
par Jeanmarc
Oui, c'est cela qui m'inquiétais le problème de ressource.
50 container rien que pour des Tool tip. Bon ok, si cela fonctionne.
C'est mon défaut, je veux faire le plus simple possible. Mais il faut quand meme un minimum de code.
Merci encore,
JM
Re: GadgetToolTip
Publié : mar. 23/oct./2018 12:16
par Micoute
Je ne comprends pas pourquoi tant de container ?
Re: GadgetToolTip
Publié : mar. 23/oct./2018 14:17
par zaphod_b
Salut,
pour le tooltip sur textgadget (ou le click) il faut le #SS_NOTIFY :
Code : Tout sélectionner
Enumeration
#Window_0
EndEnumeration
;}
;{ Gadgets
Enumeration
#Text_0
EndEnumeration
;}
Define.l Event
;}
Procedure OpenWindow_Window_0()
If OpenWindow(#Window_0, 450, 200, 400, 400, "Window_0", #PB_Window_SystemMenu|#PB_Window_SizeGadget|#PB_Window_MinimizeGadget|#PB_Window_TitleBar)
TextGadget(#Text_0, 40, 40, 130, 30, "Gadget_0",#SS_NOTIFY)
GadgetToolTip(#Text_0,"essai tooltip")
EndIf
EndProcedure
OpenWindow_Window_0()
;{- Event loop
Repeat
Event = WaitWindowEvent()
Select Event
; ///////////////////
Case #PB_Event_Gadget
Select EventGadget()
Case #Text_0
Debug "ici"
EndSelect
; ////////////////////////
Case #PB_Event_CloseWindow
Select EventWindow()
Case #Window_0
CloseWindow(#Window_0)
Break
EndSelect
EndSelect
ForEver
Re: GadgetToolTip
Publié : mar. 23/oct./2018 16:56
par MLD
@zaphod_b
Merci. Je savais pour le click mais pas pour le tooltip