Prob pour enregistrer une image

Résolu
robapt Messages postés 114 Date d'inscription mardi 6 juillet 2004 Statut Membre Dernière intervention 4 décembre 2009 - 13 mai 2006 à 14:45
robapt Messages postés 114 Date d'inscription mardi 6 juillet 2004 Statut Membre Dernière intervention 4 décembre 2009 - 13 mai 2006 à 18:25
Salut tout le monde, voila je vais vous donner mon code qui comme vous
pourrai le voir à un défault,ce que je faire en fait c'est que quand je
clique sur un bouton, la picturebox s'enregistre puis l'orsque que je
reclique ,elle s'enregistre mais sous un autre nom .



Alor il y a sur la feuille :-1 filelistbox (File1)


-1 bouton (Command 1)


-1 picturebox (Picture1)



Private Sub Command1_Click()

File1.Path = "C:\Documents and Settings\Baptiste\bureau"

SavePicture Picture1.Image, File1.Path & "Image" & "(" & File1.ListCount & ")" & ".jpeg"

End Sub



La sauvegard ne s'actualise pas ,par exemple sa enregistre "image1.jpg"
puis je suis obligé de quitter le prog pour obtenir "image2.jpg" sinon
"image1.jpg" est remplacé !!!

Puis aussi un autre pti problème, je précise le chemin "C:\Documents and Settings\Baptiste\bureau" mais sa enregistre dans "C:\Documents and Settings\Baptiste" donc 1 dossier en dessous !Comment faire pour réparrer ces deux problèmes ???



MERCI

2 réponses

cs_Jack Messages postés 14006 Date d'inscription samedi 29 décembre 2001 Statut Modérateur Dernière intervention 28 août 2015 79
13 mai 2006 à 16:30
Salut
-1- De mémoire, SavePicture ne sauvegarde pas au format JPG, mais BMP
Tu peux toujours appeler ton fichier .JPG, mais il n'en sera pas un
-2- La parenthèse se trouve dans le nom de l'image, bizarre. Ca donnera "Image(1).jpeg"
-3- ListCount te fournit le nombre d'item dans ta liste, pas l'index actuellement sélecttionné (ListIndex je crois)
Décompose ta ligne pour en être sûr :
Dim sTemp As String
sTemp = File1.Path & "Image" & "(" & File1.ListCount & ")" & ".jpeg"
Debug.Print "Cde SavePicture : Nom du fichier = "; sTemp
SavePicture Picture1.Image, sTemp
Regarde dans la fenêtre de Debug (Ctrl-G) se qui s'affiche
Regarde si les \ sont bien présents là où il faut

Si tu veux changer le nom du fichier pour l'incrémenter , il faudra :
-A- Créer une variable de comptage (Dim Cptr As Integer) et l'initialiser à 1
-B- Composer le nom du fichier final : sTemp = File1.Path & "Image" & "(" & CStr(Cptr) & ")" & ".jpeg"
-C- Vérifier si le fichier existe déjà avec un simple avec la fonction Dir
- Si le fichier n'existe pas, enregistrer (SavePicture) avec le nom préparé et sortir
- Si le fichier existe, incrémenter ta variable, et recommencer à partir de la ligne B

Vala
Jack, MVP VB
NB : Je ne répondrai pas aux messages privés

Champion du monde de boule de cristal - 2005
Le savoir est la seule matière qui s'accro
3
robapt Messages postés 114 Date d'inscription mardi 6 juillet 2004 Statut Membre Dernière intervention 4 décembre 2009
13 mai 2006 à 18:25
Merci beaucoup Jack pour tes conseil ! ^^
3
Rejoignez-nous