Je voudrais savoir comment démarrer avec l'utilisation des api windows.
Si par exemple je souhaite utiliser WM_MOUSEMOVE comment dois je l'insérer dans mon purebasicsuper ?
Merci

Code : Tout sélectionner
Enumeration
#Fenetre
#Image_0
#Image_1
#FondBlanc
#ImageGadget
EndEnumeration
Hauteur = 200
Largeur = 400
CreateImage(#Image_0, Largeur,Hauteur) ; Image de ce qui est fixe
CreateImage(#Image_1, Largeur,Hauteur) ; image de ce qui est en cours dêtre dessiné
Procedure DessineFleche(x, y, Largeur)
StartDrawing(ImageOutput(#Image_1))
DrawImage(ImageID(#Image_0), 0, 0)
For i = 1 To Largeur
LineXY(0, 10 + i, x - 40, 10 + i, RGB(226, 23, 29)) ; Horizontale
LineXY(x - 40 + i, 11, x - 40 + i, y - 30, RGB(226, 23, 29)) ; Verticale
LineXY(x - 40 + i, y - 30, x - 60 + i, y - 60, RGB(226, 23, 29)) ; Bord fleche gauche
LineXY(x - 40 + i, y - 30, x - 20 + i, y - 60, RGB(226, 23, 29)) ; Bord fleche droit
Next
StopDrawing()
SetGadgetState(#ImageGadget,ImageID(#Image_1))
RedrawWindow_(WindowID(#Fenetre), 0, 0, #RDW_INVALIDATE|#RDW_UPDATENOW)
EndProcedure
OpenWindow(#Fenetre, 417, 181, 600, 500, "Fleche et souris", #PB_Window_SystemMenu|#PB_Window_SizeGadget|#PB_Window_TitleBar)
ImageGadget(#ImageGadget, 100, 100, Largeur,Hauteur, ImageID(#Image_1))
StartDrawing(ImageOutput(#Image_0))
FillArea(0, 0, RGB(255,255,255), RGB(255,255,255))
StopDrawing()
DessineFleche(Largeur, Hauteur, 10)
Repeat
Evenement = WaitWindowEvent()
Select Evenement
Case #WM_MOUSEMOVE
MouseX = WindowMouseX(#Fenetre)
MouseY = WindowMouseY(#Fenetre)
If GetAsyncKeyState_(#VK_LBUTTON)
DessineFleche(mousex - GadgetX(#ImageGadget), mousey - GadgetY(#ImageGadget), 15)
EndIf
EndSelect
Until Evenement = #PB_Event_CloseWindow