detecter le passage de la souris sur un gadget

Vous débutez et vous avez besoin d'aide ? N'hésitez pas à poser vos questions
fred32
Messages : 22
Inscription : jeu. 18/août/2005 14:51

detecter le passage de la souris sur un gadget

Message par fred32 »

salut à tous, j'aimerai savoir comment on fait pour detecter quand la souris survole un gadget. :) :?:
wolfjeremy
Messages : 1202
Inscription : sam. 31/déc./2005 23:52

Message par wolfjeremy »

Je ne voi pas l'interet vu que les gadget gere déjà tout se qu'il faut mais tu peut utiliser les commande de directx je pense. Tape "Mouse" dans l'aide de PB et tu aura tout se qu'il te faut :wink:
ExamineMouse
InitMouse
MouseButton
MouseDeltaX
MouseDeltaY
MouseLocate
MouseWheel
MouseX
MouseY
ReleaseMouse
Backup
Messages : 14526
Inscription : lun. 26/avr./2004 0:40

Message par Backup »

@wolfjeremy : attends d'avoir le niveau pour aider les gens ! :?


@ Fred32: voici ta réponse !


; German forum: http://robsite.de/php/pureboard/viewtop ... highlight=
; Author: Andreas
; Date: 05. May 2003

Global Button.l

Procedure IsMouseOver(wnd)
         GetWindowRect_ (wnd,re.RECT)
        re\left = re\left
        re\top = re\top
        re\right = re\right
        re\bottom = re\bottom
         GetCursorPos_ (pt.POINT)
        Result = PtInRect_ (re,pt\x,pt\y)
         ProcedureReturn Result
EndProcedure

If OpenWindow (0, 200, 200, 480, 320, #PB_Window_SystemMenu | #PB_Window_MinimizeGadget | #PB_Window_MaximizeGadget , "MouseOver" )
         CreateStatusBar (0, WindowID ())
         If CreateGadgetList ( WindowID ())
                Button = ButtonGadget (0, 10,10,80,24, "OK" )
         EndIf
         Repeat
                EventID.l = WaitWindowEvent ()
                 If IsMouseOver(Button)
                         StatusBarText (0, 0, "Maus über Button" )
                 Else
                         StatusBarText (0, 0, "" )
                 EndIf
                 If EventID = #PB_Event_CloseWindow
                        Quit = 1
                 EndIf
         Until Quit = 1
EndIf
End
; ExecutableFormat=Windows
; CursorPosition=3
; FirstLine=1
; EOF
fred32
Messages : 22
Inscription : jeu. 18/août/2005 14:51

Message par fred32 »

merci, c'est exactement ce que je voulait
Répondre