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

IHM Discussion :

Afficher une photo dans un formulaire


Sujet :

IHM

  1. #1
    Membre à l'essai
    Profil pro
    Inscrit en
    Décembre 2011
    Messages
    40
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Décembre 2011
    Messages : 40
    Points : 14
    Points
    14
    Par défaut Afficher une photo dans un formulaire
    Bonjour à tous

    Je possède une table comprenant un champ Photo que j'ai mis en type OLE.
    J'ai ensuite crée un formulaire sur cette table d'élèves.
    Pour ajouter un nouvel élève je me mets en Mode Formulaire, et pour le champ Photo je fais un clic droit sur la souris, puis "Insérer un objet", et je choisis l'image que je veux. Une fois terminé l'image a bien été sauvegardée mais ne s'affiche pas, j'ai seulement droit a l'icône ".png" et au nom de l'image dans le cadre... sauriez-vous comment faire ?
    (je précise qu'il s'agit d'un champ variant pour chaque élève, et non d'une image fixe)

    Je vous remercie par avance pour votre aide.

  2. #2
    Expert éminent sénior
    Avatar de tee_grandbois
    Homme Profil pro
    retraité
    Inscrit en
    Novembre 2004
    Messages
    8 652
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 67
    Localisation : France, Yvelines (Île de France)

    Informations professionnelles :
    Activité : retraité

    Informations forums :
    Inscription : Novembre 2004
    Messages : 8 652
    Points : 14 631
    Points
    14 631
    Par défaut
    Bonjour,
    Access n'affice pas automatiquement les dessins autres que le type BMP dans les champs OLE. Utilise plutôt un champ texte contenant le chemin de chaque image, insère un objet image (Image1 dans l'exemple) et sur l'événement Form_Current de ton formulaire insère le code suivant:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    Me.Image1.Picture = Me.CheminImage.Value
    CheminImage est le champ texte contenant le nom de ton image avec le chemin complet : "C:\Images\Photo1.png". Cela a l'avantage d'afficher tous les types d'images et n'alourdit pas ta base de données.
    Quand on est derrière l'écran on n'a aucun clavier sous les mains ...
    ah non ? donc devant l'écran c'est la connectique ?

  3. #3
    Membre à l'essai
    Profil pro
    Inscrit en
    Décembre 2011
    Messages
    40
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Décembre 2011
    Messages : 40
    Points : 14
    Points
    14
    Par défaut
    merci tee_grandbois pour ta réponse

    je ne suis pas sûre de l'endroit où il faut ajouter le code dans la feuille de propriétés : c'est bien dans Evènements : champ "sur entrée" ?
    Quant à "Image1" c'est le nom de l’étiquette du « Cadre d’objet dépendant » créée dans le formulaire (puisque si j’utilise le contrôle « Image » je dois tout de suite choisir la photo en Mode création du formulaire, ainsi elle sera fixe pour tous les enregistrements) ?

    de plus cela me crée une erreur à cause du "Me."

    enfin si j'ai bien compris cette méthode n'est pas transportable car si on enregistre la base sur un autre pc les chemins des images sont "cassés" et il faut tout rechanger un à un ?

    merci par avance pour votre aide

  4. #4
    Expert éminent sénior
    Avatar de Domi2
    Homme Profil pro
    Gestionnaire
    Inscrit en
    Juin 2006
    Messages
    7 194
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 64
    Localisation : Suisse

    Informations professionnelles :
    Activité : Gestionnaire
    Secteur : Administration - Collectivité locale

    Informations forums :
    Inscription : Juin 2006
    Messages : 7 194
    Points : 16 040
    Points
    16 040
    Par défaut
    Bonjour,

    Ici, un excellent tutoriel qui répond exactement à ton besoin : Gestion de photos par formulaire.


    Citation Envoyé par sophie) Voir le message
    enfin si j'ai bien compris cette méthode n'est pas transportable car si on enregistre la base sur un autre pc les chemins des images sont "cassés" et il faut tout rechanger un à un ?
    Non, absolument pas. Il y a différentes méthodes pour contourner ce problème, par exemple d'indiquer dans une table de paramètres le chemin du répertoire qui contient les photos et le récupérer à l'ouverture de la base.

    Mais le plus simple est de mettre tes photos dans un sous-répertoire du dossier qui héberge ton application. Celui-ci peut-être connu avec CurrentProject.Path.

    Par exemple, si tu mets tes photos dans un répertoire nommé "Photos" :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    Me.LeNomDeTonControleImage.Picture = CurrentProject.Path & "\Photos\" & "LaPhoto.jpg"
    Ainsi, tu n'auras aucun problème de liens avec tes photos.

    Domi2
    Vous avez des montres, nous avons le temps ! (citation attribuée à L.-S. Senghor)

    Ici, on ne perd pas de temps ! On en passe...


    Access : créer des codes-barres 128 en VBA
    Access : les commandes intégrées des menus

    Ce message (ou un autre) vous a aidé ? Votez pour lui avec

Discussions similaires

  1. afficher une photo dans un formulaire
    Par raph07 dans le forum IHM
    Réponses: 1
    Dernier message: 30/07/2008, 01h28
  2. Afficher une photo dans un formulaire
    Par JeanMichel92 dans le forum IHM
    Réponses: 7
    Dernier message: 10/05/2007, 17h14
  3. Afficher une photo dans un formulaire
    Par db48752b dans le forum IHM
    Réponses: 7
    Dernier message: 11/09/2006, 12h01
  4. Afficher une photo dans un formulaire
    Par boko93 dans le forum Access
    Réponses: 8
    Dernier message: 04/09/2006, 16h34
  5. Afficher une table dans un formulaire
    Par noob_vba dans le forum IHM
    Réponses: 8
    Dernier message: 20/06/2006, 16h54

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