Page 1 sur 1
capture d'ecran automatique
Publié : jeu. 07/juil./2005 1:45
par kelly
Qui saurait me dire quel morceau de code mettre dans un programme pour simuler l'appuie de la touche "IMPR ECRAN" afin de copier l'image a l'ecran dans le tampon pour le retransferer plus tard avec "coller" dans un logiciel de dessin ??
Publié : jeu. 07/juil./2005 2:43
par Dorian
Voici un code qui te permet simuler la touche Impr écran :
Code : Tout sélectionner
; English forum: http://purebasic.myforums.net/viewtopic.php?t=3695&highlight=
; Author: PB
; Date: 30. January 2002
#Desk = #True ; set to #True, if you want screenshot of full desktop
; set to #False, if you want only capture active window
If #Desk = #True ; make screenshot of full desktop
keybd_event_(#VK_SNAPSHOT,0,0,0) ; Snapshot of entire desktop
; Note: Win 9x needs 1,0,0 for the entire desktop.
Else ; make screenshot of active window
keybd_event_(#VK_SNAPSHOT,1,0,0) ; Snapshot of current active window.
EndIf
MessageRequester("Message","OK, paste the current clipboard data to your favorite Gfx program to see screenshot.",#MB_ICONEXCLAMATION)
J'espère que c'est ce que tu cherches.
Publié : jeu. 07/juil./2005 5:44
par kelly
C'est pour screenshooté un ecran "OpenScreen(1024,768,32,"name")". Mais helas, ca ne marche pas. Est ce parce qu'il me manque une lib ou parce que G la version 3.91 ou je ne sais koi ????
ps : je n'ai aucun message d'erreur.
Publié : jeu. 07/juil./2005 8:39
par Heis Spiter
Code : Tout sélectionner
i = 0
Repeat
Delay(1)
If GetAsyncKeyState_(#VK_SNAPSHOT) = -32767
If ExamineDesktops()
Ecran_Largeur = DesktopWidth(0)
Ecran_Hauteur = DesktopHeight(0)
ProfondeurCouleur = DesktopDepth(0)
Else
End
EndIf
DC = GetDC_(0)
CreateImage(0, Ecran_Largeur, Ecran_Hauteur)
Dessin = StartDrawing(ImageOutput())
BitBlt_(Dessin, 0, 0, Ecran_Largeur, Ecran_Hauteur, DC, 0, 0, #SRCPAINT | $40000000)
StopDrawing()
ReleaseDC_(0, DC)
SaveImage(0, "D:\Screen"+Str(i)+".bmp", #PB_ImagePlugin_BMP)
i = i + 1
EndIf
ForEver