api windows

Vous débutez et vous avez besoin d'aide ? N'hésitez pas à poser vos questions
coxco
Messages : 92
Inscription : ven. 06/juin/2008 16:04

api windows

Message par coxco »

Bonjour

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 :)
Purebasic 4.60 - W7 Ed.Fam.
Avatar de l’utilisateur
Micoute
Messages : 2583
Inscription : dim. 02/oct./2011 16:17
Localisation : 35520 La Mézière

Re: api windows

Message par Micoute »

Par exemple, comme ceci

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
Microsoft Windows 10 Famille 64 bits : Carte mère : ASRock 970 Extreme3 R2.0 : Carte Graphique NVIDIA GeForce RTX 3080 : Processeur AMD FX 6300 6 cœurs 12 threads 3,50 GHz PB 6.20 LTS (x64)
Un homme doit être poli, mais il doit aussi être libre !
coxco
Messages : 92
Inscription : ven. 06/juin/2008 16:04

Re: api windows

Message par coxco »

ok merci pour l'info

Il y aurait pas une aide globale pour insérer les api windows dans un programme en purebasic ?

:)
Purebasic 4.60 - W7 Ed.Fam.
Avatar de l’utilisateur
Ar-S
Messages : 9539
Inscription : dim. 09/oct./2005 16:51
Contact :

Re: api windows

Message par Ar-S »

Salut
Des aides globales non mais plein d'exemples oui.
Tu peux suivre ce fil de discution
~~~~Règles du forum ~~~~
⋅.˳˳.⋅ॱ˙˙ॱ⋅.˳Ar-S ˳.⋅ॱ˙˙ॱ⋅.˳˳.⋅
W11x64 PB 6.x
Section HORS SUJET : ICI
LDV MULTIMEDIA : Dépannage informatique & mes Logiciels PB
UPLOAD D'IMAGES : Uploader des images de vos logiciels
coxco
Messages : 92
Inscription : ven. 06/juin/2008 16:04

Re: api windows

Message par coxco »

Merci je vais suivre et merci pour la traduction !!
ça va bien m'aider :D
Purebasic 4.60 - W7 Ed.Fam.
Répondre