Salut,
@Ar-s Voilà un condensé de code glané un peu partout...
DON la forme d'utilisation d'"
Eventype()..."
Et leurs utilisation, et détection des "Click",
Si ça peu servir...
Code : Tout sélectionner
; **********************************************************
; Detecte les Click / Mouvements et Roulette souris
; **********************************************************
;
Enumeration
#Window_0
EndEnumeration
#WM_MOUSEWHEEL = $20A
#WHEEL_DELTA = 120
;
If OpenWindow(#Window_0, 0, 0, 425, 350, "Exemple", #PB_Window_SystemMenu | #PB_Window_ScreenCentered)
Texte1$="ou là : "
Texte0$="ICI : "
PanelGadget(0, 10, 10, 400, 300)
AddGadgetItem(0, 0, "onglet 1")
AddGadgetItem(0, 1, "onglet 2")
TextGadget(11,10,10,50,20,Texte0$)
PanelGadget(1, 10, 30, 400, 300)
AddGadgetItem(1, 0, "onglet 11")
AddGadgetItem(1, 1, "onglet 12")
TextGadget(10,10,20,50,20,Texte1$)
CloseGadgetList()
EndIf
;{- Event loop
; ******************************************** Debut de la boucle ************************************
Repeat
; Debug "**********************************deb_boucle **************************************** " + f_n(mclickd) + " " + f_n(meg)
chaine$ = ""
;WE = WindowEvent(); ne pas mettre cette fonction en service sous risque de dysfonctionnement
WWE = WaitWindowEvent()
Fenetre = EventWindow()
EG = EventGadget()
ET = EventType()
EM = EventMenu()
EWP = EventwParam()
ELP = EventlParam()
;******************************************************************************************
Select WWE
Case #PB_Event_CloseWindow
End
Case #WM_LBUTTONDOWN ;"Bouton gauche appuyé")
Debug "Clic avec le bouton gauche de la souris Gadget="+Str(EG)+" etat="+Str(GetGadgetState(EG))
Case #WM_RBUTTONDOWN ;"Bouton droit appuyé")
Debug "Clic avec le bouton droit de la souris Gadget="+Str(EG)+" etat="+Str(GetGadgetState(EG))
Case #WM_LBUTTONUP ;"Bouton gauche relaché")
Case #WM_RBUTTONUP ;"Bouton droit relaché")
Case #WM_MBUTTONDOWN ;"Bouton du milieu appuyé"
Case #WM_MBUTTONUP ;"Bouton du milieu relaché")
Case #WM_LBUTTONDBLCLK ;"Double clic gauche")
Debug "Double-clic avec le bouton gauche de la souris Gadget="+Str(EG)+" etat="+Str(GetGadgetState(EG))
Case #WM_RBUTTONDBLCLK ;"Double clic droit")
Debug "Double-clic avec le bouton droit de la souris Gadget="+Str(EG)+" etat="+Str(GetGadgetState(EG))
Case #WM_MBUTTONDBLCLK ;"Double clic du milieu")
Debug "Double-clic avec la roulette du Milieu de la souris Gadget="+Str(EG)+" etat="+Str(GetGadgetState(EG))
Case #WM_MOUSEWHEEL
Molette.l = -(EWP>>16)/#WHEEL_DELTA
If Molette>0 ;"Molette en avant de
Debug "Molette Arrière de la souris Gadget="+Str(EG)+" etat="+Str(GetGadgetState(EG))
ElseIf Molette<0 ;"Molette en arrière de
Debug "Molette avant de la souris Gadget="+Str(EG)+" etat="+Str(GetGadgetState(EG))
EndIf
Case #WM_MOUSEMOVE
;Debug "Déplacement de la souris Gadget="+Str(EG)+" etat="+Str(GetGadgetState(EG)); OK
Case #PB_Event_Gadget
Select ET
Case #PB_EventType_LeftClick ;"Image : Bouton gauche appuyé"
Case #PB_EventType_LeftDoubleClick ;"Image : Double clic gauche")
Case #PB_EventType_RightClick ;"Image : Bouton Droit appuyé"
Case #PB_EventType_RightDoubleClick ;"Image : Double clic droit")
EndSelect
Debug "EvenType : "+Str(ET)
Case #PB_Event_Repaint
StartDrawing(WindowOutput(#Window_0))
;DrawImage(ImageID(Frame3D_5), 792, 97)
;DrawImage(ImageID(1), 320, 80)
;DrawImage(ImageID(2), 320, 200)
StopDrawing()
Case #WM_CHAR
Car=EventwParam()
If Car<>8 Or Car<>13 Or Car<>27
Debug "#CHAR: " + Str(Car)+" "+Chr(Car)
Texte0$="ou là : "+Chr(Car)
SetGadgetText(10,Texte0$)
Else
Debug "#CHAR: " + Str(Car)
EndIf
Case #WM_KEYDOWN
Debug "#KEYDOWN: " + Str(EventwParam())
Case #WM_KEYUP
Debug "#KEYUP: " + Str(EventwParam())
Case #WM_DEADCHAR
Debug "#DEADCHAR: " + Str(EventwParam())
Case #WM_SYSCHAR
Debug "#SYSCHAR: " + Str(EventwParam())
Case #WM_SYSKEYDOWN
Debug "#SYSKEYDOWN: " + Str(EventwParam())
Case #WM_SYSKEYUP
Debug "#SYSKEYUP: " + Str(EventwParam())
EndSelect
; *************************************** fin de la boucle *****************************************
; Until WE = #PB_Event_CloseWindow Or WWE = #PB_Event_CloseWindow
ForEver
;******************************* fin du PRG *************************************************
End