IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

VB 6 et antérieur Discussion :

Changer le nom d'une image pour l'enregistrement


Sujet :

VB 6 et antérieur

  1. #1
    Membre actif Avatar de petit rabot
    Homme Profil pro
    Technicien maintenance
    Inscrit en
    Août 2010
    Messages
    236
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 46
    Localisation : France, Loire Atlantique (Pays de la Loire)

    Informations professionnelles :
    Activité : Technicien maintenance
    Secteur : Industrie

    Informations forums :
    Inscription : Août 2010
    Messages : 236
    Points : 226
    Points
    226
    Par défaut Changer le nom d'une image pour l'enregistrement
    Bonjour, je travail actuellement sur un projet avec une base de données (accèss 2007). J'y enregistre des données texte, mais je veux aussi pouvoir stocker des images. A la lecture de plusieurs post, j'ai pu voir que le meilleur moyen est de stocker le chemin de l'image plutôt de l'image elle même.
    Pour ce faire, j'ai une interface; Boîte de dialogue Ouvrir; qui me permet de sélectionner ma photo, puis un code pour l'enregistrer dans un dossier spécifique (le même dossier pour toutes les images de ma bd). Mon problème est que lorsque j'enregistre, c'est plus un copier/coller qu'un enregistrement, ce qui fait que le nom de la photo reste le même que l'original. Je voudrais pouvoir lui donner un nom du type "NomClient_MarqueMachine_NumSerie_00".

    Auriez vous une solution à me proposer.
    Voici mon code actuel:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    Option Explicit
    Dim FSO As New FileSystemObject
    Dim ChPhotos As String
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
    28
    29
    30
    31
    32
    33
    34
    35
    36
    37
    Private Sub Command3_Click()
     
    Dim FicDest As String
    Dim ficSource As String
    Dim reponse As Byte
     'Attribue à CancelError la valeur True
      Dlg.CancelError = True
      On Error GoTo errhandler
      ' Définit la propriété Flags
      Dlg.Flags = cdlOFNHideReadOnly
      ' Définit les filtres
      Dlg.Filter = "Tous les fichiers (*.*)|*.*|Fichiers image" & _
      "(*.jpg)|*.jpg|Fichiers batch (*.bat)|*.bat"
      ' Définit le filtre par défaut
      Dlg.FilterIndex = 2
      ' Affiche la boîte de dialogue Ouverture
      Dlg.ShowOpen
      ' Affiche le nom du fichier sélectionné
      List1.AddItem Dlg.FileTitle
      FicDest = App.Path & "\BdPhotos\"
      ficSource = Dlg.FileName
          If FSO.FileExists(FicDest & Dlg.FileTitle) = False Then
      FSO.CopyFile ficSource, FicDest
         Else
            reponse = MsgBox("le fichier existe déjà, voulez vous l'écraser?", vbYesNo, "Attention")
            If reponse = vbYes Then
                FSO.CopyFile ficSource, FicDest, True
                Else
                Exit Sub
            End If
          End If
        Exit Sub
    errhandler:
      'L'utilisateur a cliqué sur Annuler
      Exit Sub
     
    End Sub
    Merci d'avance.

  2. #2
    Membre éprouvé Avatar de DAUDET78
    Homme Profil pro
    retraité
    Inscrit en
    Janvier 2008
    Messages
    635
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 81
    Localisation : France, Yvelines (Île de France)

    Informations professionnelles :
    Activité : retraité
    Secteur : Industrie

    Informations forums :
    Inscription : Janvier 2008
    Messages : 635
    Points : 1 168
    Points
    1 168
    Par défaut
    Moi, je ne connais pas FSO ....
    Je fais
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    FileCopy "Source.jpg", "Dest.JPG"
    Tu peux aussi utiliser la commande
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    Name  "Dest.JPG" as "Toto.JPG

  3. #3
    Membre actif Avatar de petit rabot
    Homme Profil pro
    Technicien maintenance
    Inscrit en
    Août 2010
    Messages
    236
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 46
    Localisation : France, Loire Atlantique (Pays de la Loire)

    Informations professionnelles :
    Activité : Technicien maintenance
    Secteur : Industrie

    Informations forums :
    Inscription : Août 2010
    Messages : 236
    Points : 226
    Points
    226
    Par défaut
    Citation Envoyé par DAUDET78 Voir le message
    Je fais
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    FileCopy "Source.jpg", "Dest.JPG"
    Merci DAUDET78 pour ta solution qui s'avère beaucoup plus simple que FSO... et qui me permet directement de changer de nom lors de la copie.
    Voici mon code:

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    'enregistre l'image dans le chemin désiré
        FicDest = App.Path & "\BdPhotos\"
        FicSource = File1.Path & "\" & File1.FileName
        ShortName = Form14.Combo2.Text & "_" & Form14.Text8.Text & "_" & Utilisateur & "_" & Format(NbPhoto, "0000")
        NewName = ShortName & ".jpg"
     
    'copie de la photo dans le répertoire
        FileCopy FicSource, FicDest & NewName

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. [WD15] Interrupteur pour changer un libellé d'une image en Windev 15
    Par lalaoraj dans le forum WinDev
    Réponses: 11
    Dernier message: 11/02/2015, 20h39
  2. [CS5.5] extension php upload pour insérer le nom d'une image dans une table
    Par barale61 dans le forum Dreamweaver
    Réponses: 3
    Dernier message: 14/02/2013, 10h48
  3. [MooTools] Insertion fonction qui affiche le nom de l'image pour une galelrie photo :)
    Par bugordi dans le forum Bibliothèques & Frameworks
    Réponses: 0
    Dernier message: 10/06/2009, 13h47
  4. Afficher une image pour chaque enregistrements
    Par JLV1975 dans le forum IHM
    Réponses: 5
    Dernier message: 17/03/2008, 11h48
  5. [FLASH 5]un bouton dans une image pour revenir sur une scene
    Par patato valdes dans le forum Flash
    Réponses: 7
    Dernier message: 28/04/2004, 20h21

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo