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 :

[VB6] ADO Recordset et Image


Sujet :

VB 6 et antérieur

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre averti
    Inscrit en
    Juin 2002
    Messages
    47
    Détails du profil
    Informations forums :
    Inscription : Juin 2002
    Messages : 47
    Par défaut [VB6] ADO Recordset et Image
    Salut à tous,
    Voilà, je suis entrain de construire une application en VB6
    utilisant une BD Access contenant une table ayant un champ photo (OLE).
    Dans ma form VB, je voudrais afficher cette photo et pouvoir la modifier (changer de photo) et sauvegarder.
    J'utilise pour cela un control Image et 2 boutons LoadPicture et SavePicture.
    Voici le code

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
     
    Private Sub CmdLoadPicture_Click()
        CommonDialog1.ShowOpen
        Image1.Picture = LoadPicture(CommonDialog1.FileName)
      End Sub
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
     
    Private Sub CmdSavePicture_Click()
        stSQL = "SELECT * FROM maTable WHERE ...."
        rst.Open stSQL, cnx, adOpenKeyset, adLockOptimistic
        rst.Fields("Photo") = Image1.Picture
        rst.update
    End Sub
    Le problème se trouve au niveau de rst.Fields("Photo") = Image1.Picture,
    j'obtiens une erreur et je ne sais pas si je suis sur la bonne voix.
    Est ce quelqu'un peu m'eclairer un peu, je debute en VB.
    Merci

  2. #2
    Membre éclairé
    Profil pro
    Inscrit en
    Février 2006
    Messages
    46
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Février 2006
    Messages : 46
    Par défaut
    Suivant la version d'access que tu utilise tu ne peux peut-être pas enregistrer ta photo directement !

    La solution pour éviter les problèmes et avoir une base trop grosse consiste à enregistrer le chemin d'accès de la photo dans le champ access et ensuite dans ton appli tu vas chercher la photo pour l'afficher.

    Pour éviter les plantages si l'utilisateur change les photos de place, c'est de les copier dans un sous répertoire de ton appli. auxquel l'utilisateur n'aurat pas accès et d'enregistrer le nom de ta photo dans access et les recharger à partir de ce répertoire.

    Si ce n'est pas clair hésite pas à demander des précisions !

  3. #3
    Membre averti
    Inscrit en
    Juin 2002
    Messages
    47
    Détails du profil
    Informations forums :
    Inscription : Juin 2002
    Messages : 47
    Par défaut
    Merci BigYork
    Je vais essayer ta solution et je vais te contacter en cas de besoin

Discussions similaires

  1. Vb6 Ado Access : Probleme Recordset
    Par visualnotbasic dans le forum VB 6 et antérieur
    Réponses: 4
    Dernier message: 27/02/2007, 19h34
  2. [VB6]ADO Suppression dans un RecordSet
    Par teurnal dans le forum VB 6 et antérieur
    Réponses: 5
    Dernier message: 22/02/2006, 18h52
  3. [VB6] [Graphisme] Transfert d'image pixel par pixel
    Par SpaceFrog dans le forum VB 6 et antérieur
    Réponses: 16
    Dernier message: 15/10/2002, 09h53
  4. [VB6] [Excel] Insérer une image dans une feuille
    Par mathias dans le forum VB 6 et antérieur
    Réponses: 7
    Dernier message: 09/10/2002, 07h44
  5. [VB6] [ADO] Pb ajout enregistrement table liée
    Par fikou dans le forum VB 6 et antérieur
    Réponses: 4
    Dernier message: 01/10/2002, 11h49

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