Capture d'écran [Résolu]

Signaler
Messages postés
52
Date d'inscription
mercredi 2 décembre 2009
Statut
Membre
Dernière intervention
21 juin 2011
-
Messages postés
14
Date d'inscription
mardi 1 mai 2012
Statut
Membre
Dernière intervention
15 novembre 2013
-
salut,
je veu faire une capture d'écran chaque 5 secondes par exple,
je fait ca avec un Timer, et cel la mon petit code:
  Private Sub Timer1_Tick(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Timer1.Tick
        Dim capture As Bitmap
        capture = CapturerBureauWindows()
        capture.Save("d:\capture.jpg")
    End Sub

Mais le problème ici c que je doit faire une astuce pour nommer chaque image un nom différent pour qu'ils peuvent s'enregistrent tous,
merci.

10 réponses

Messages postés
693
Date d'inscription
samedi 18 mai 2002
Statut
Membre
Dernière intervention
17 avril 2017
2
Bonjour,

> pile_poil : oui, mais c'est valable pour une seule cession, à la prochaine il va se retrouver avec capture1.jpg au départ.

> etoile100100 : Je suggère plutôt d'ajouter la date et l'heure au nom du fichier.
Je ne connais pas VB.Net mais en VB6 c'est :
fichier = "d:\capture_" & Format$(Date$, "ddmmyy_") & Format$(Time$, "hhmmss") & ".jpg"

ce qui donne pour le 07-05-2001 à 12:22:28
d:\capture_050711_122228.jpg

Ainsi il n'y aura jamais le même nom de fichier et ce nom sera plus explicite.

Cheyenne
Messages postés
52
Date d'inscription
mercredi 2 décembre 2009
Statut
Membre
Dernière intervention
21 juin 2011

merci beaucoup pour vos aide, la solution final est ceci:
 Private Sub Timer1_Tick(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Timer1.Tick
        Dim capture As Bitmap
        capture = CapturerBureauWindows()
        Dim captur As Object
        captur = Format(Today, "ddmmyy") & Format(TimeOfDay, "hhmmss")
        capture.Save("d:" & captur & ".jpg")
    End Sub
Messages postés
682
Date d'inscription
vendredi 6 avril 2007
Statut
Membre
Dernière intervention
4 août 2012
6
Private Sub Timer1_Tick(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Timer1.Tick
    static toto as integer
    toto = toto+1        
    Dim capture As Bitmap
    capture = CapturerBureauWindows()
    capture.Save("d:\capture" & cstr(toto) & ".jpg")
End Sub

pas testé mais ça doit marcher



si c'est la solution, penser : REPONSE ACCEPTEE
Messages postés
416
Date d'inscription
vendredi 22 février 2008
Statut
Membre
Dernière intervention
7 janvier 2018
1
Bonjour,
Ce sujet m'intéresse également,
Je produit une petite animation en 3D sur un panel.

Le calcul d'image est parfois long et saccadé et je voudrais pouvoir prendre des "photos" du panel.
Est-il possible également de récupérer l'image de mon panel a interval régulier, pour ensuite former une petite vidéo.
d'avance merci. CGSI3
Messages postés
693
Date d'inscription
samedi 18 mai 2002
Statut
Membre
Dernière intervention
17 avril 2017
2
Re,

Toujours utiliser le typage pour les fonctions de texte. Format -> Format$
C'est 3 fois plus rapide (du moins en VB6).
Si le $ n'est pas utilisé, c'est considéré comme un type Variant, ce ralentit le temps d'exécution et consomme plus de mémoire.

Rajoutes un _ entre d:\capture et la date, cela rendra le nom de tes fichiers plus lisible.
   d:\capture050711_122228.jpg
-> d:\capture_050711_122228.jpg

Enfin, c'est toi qui es l'utilisateur, tu fais ce que tu veux

Cheyenne
Messages postés
52
Date d'inscription
mercredi 2 décembre 2009
Statut
Membre
Dernière intervention
21 juin 2011

merci bien , c trés logique
mais, j'ai une case à coché, que lorsqu'on la coche, les captures se lancent, je veu que je garde l'état du case à coché, c-a-d lorsque je coche la et je ferme, lorsque j'ouvre mon program je trouve ma case encore coché.
je pense à faire une petite base access
Messages postés
693
Date d'inscription
samedi 18 mai 2002
Statut
Membre
Dernière intervention
17 avril 2017
2
Re,

Tu ne vas quand même pas faire une base access pour si peu !

Le plus simple est de sauvegarder l'état de la case à cocher dans un simple fichier.
0 Unchecked   1 Checked   2 Grayed (en VB6)

Puis à l'ouverture du programme tu lis la valeur et tu l'attribues à la case à cocher.

Sinon tu as la base de registre ou les fichiers ini.

Cheyenne

PS. Attention aux nombreuses fautes d'orthographe !
Messages postés
52
Date d'inscription
mercredi 2 décembre 2009
Statut
Membre
Dernière intervention
21 juin 2011

je suis en mode .net pas vb 6,
et si tu peu détailler un peu + pour moi:
*un fichier "bloc note" ou koi exactement!!!
*pas grave a propo les fautes d'orthographes
Messages postés
693
Date d'inscription
samedi 18 mai 2002
Statut
Membre
Dernière intervention
17 avril 2017
2
RE,

Si c'est grave les fautes d'orthographe

Oui un simple fichier, comme lorsque tu sauvegardes un texte par exemple.
ff = Freefile
Open fichier For Output As #ff
  Print #ff, maCheckBox.Value
Close #ff

A toi de transposer en .Net

Cheyenne
Messages postés
14
Date d'inscription
mardi 1 mai 2012
Statut
Membre
Dernière intervention
15 novembre 2013

Salut etoile100100
J'aimerais connaître ton code pour convertir
" capture = CapturerBureauWindows()"
car je suis débutant au niveau vb.net merci de ton aide =)

/A.F.D.Gbug\