gadgettooltip() - Infobulle - Maitriser la zone d'affichage

Vous débutez et vous avez besoin d'aide ? N'hésitez pas à poser vos questions
GG
Messages : 239
Inscription : jeu. 09/déc./2004 12:23

gadgettooltip() - Infobulle - Maitriser la zone d'affichage

Message par GG »

Bonjour à tous,

Je souhaiterais utiliser l'équivalent de la fonction gadgettooltip, qui me permette de matriser l'endroit où je veux afficher le contenu de l'infobulle. En fait, je souhaiterais afficher le contenu de l'info bulle dans un gadget précis quelque soit les gadget que je survole avec le curseur de la souris.

Est ce possible ?

D'avance, merci de vos conseils et remarques.
PureBasic 6.03 - Windows 11 22H2 (64 bits)
Le Soldat Inconnu
Messages : 4312
Inscription : mer. 28/janv./2004 20:58
Localisation : Clermont ferrand OU Olsztyn
Contact :

Message par Le Soldat Inconnu »

oui, c'est très simple ;)

Code : Tout sélectionner

OpenWindow(0, 0, 0, 300, 200, #PB_Window_SystemMenu | #PB_Window_ScreenCentered, "Aide")
CreateGadgetList(WindowID())

ButtonGadget(1, 0, 0, 100, 20, "bouton 1")
ButtonGadget(2, 100, 50, 100, 20, "bouton 2")

CreateStatusBar(0, WindowID())
AddStatusBarField(200)

Repeat
  Event = WaitWindowEvent()
  
  If Event = #WM_MOUSEMOVE ; Si on bouge la souris
    
    Select WindowFromPoint_(DesktopMouseX(), DesktopMouseY()) ; on regarde le handle du gadget sous la souris
      Case GadgetID(1)
        StatusBarText(0, 0, "au dessus du bouton 1")
      Case GadgetID(2)
        StatusBarText(0, 0, "au dessus du bouton 2")
      Default 
        StatusBarText(0, 0, "") ; Si on n'est pas au dessus d'un gagdet avec aide, pas de texte
    EndSelect
    
  EndIf
  
Until Event = #PB_EventCloseWindow
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)]
GG
Messages : 239
Inscription : jeu. 09/déc./2004 12:23

Message par GG »

Merci beaucoup Soldat Inconnu, si ça fonctionne avec tout type de gadget, c'est génial.
PureBasic 6.03 - Windows 11 22H2 (64 bits)
GG
Messages : 239
Inscription : jeu. 09/déc./2004 12:23

Message par GG »

Je n'ai pas l'impression que cela fonctionne avec un textgadget. Je vais voir comment je peux faire.
PureBasic 6.03 - Windows 11 22H2 (64 bits)
Le Soldat Inconnu
Messages : 4312
Inscription : mer. 28/janv./2004 20:58
Localisation : Clermont ferrand OU Olsztyn
Contact :

Message par Le Soldat Inconnu »

non, un textgadget est un gadget dit statique donc ça ne marche pas avec, idem avec Frame3DGadet, etc ...
par contre, ça doit marcher avec les ImageGadget
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)]
GG
Messages : 239
Inscription : jeu. 09/déc./2004 12:23

Message par GG »

L'autre contrainte est que je ne peux pas écrire sur plusieurs lignes.
PureBasic 6.03 - Windows 11 22H2 (64 bits)
gansta93
Messages : 1448
Inscription : jeu. 26/févr./2004 11:17
Localisation : Le Village
Contact :

Message par gansta93 »

Dans ce cas, utilise un editorGadgetau lieu delabarred'état.
GG
Messages : 239
Inscription : jeu. 09/déc./2004 12:23

Message par GG »

Du velours gansta93, c'est parfait !

Merci beaucoup à vous 2 pour votre aide.
PureBasic 6.03 - Windows 11 22H2 (64 bits)
Le Soldat Inconnu
Messages : 4312
Inscription : mer. 28/janv./2004 20:58
Localisation : Clermont ferrand OU Olsztyn
Contact :

Message par Le Soldat Inconnu »

un textgadget ou un stringgadget avec l'option lecture seule et multilignes me semble mieux indiqué q'un editorgadget.

sauf si tu souhaites faire de l'affichage plus complexe avec du gras, des couleurs etc ...
la il vaut mieux passer par un editorgadget, et la libeditorplus de progi1984 me semble tout indiqué ;) (voir en dans les annonces)
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)]
Répondre