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 :

Intégration de photo dans un état [AC-2003]


Sujet :

IHM

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre éclairé
    Profil pro
    Inscrit en
    Novembre 2010
    Messages
    353
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Novembre 2010
    Messages : 353
    Par défaut Intégration de photo dans un état
    Bonjour,

    Dans ma base de données de gestion des membres de mon association, dans le formulaire "Membres" j'intégre la photo du membre. La photo n'est pas dans la base de données, seul le nom du fichier est présent dans la table [Membres], champ [Act_Photo].

    Dans l'état Fiche d'inscription, je souhaite intégrer la photo du membre. Dans cet état j'ai :
    • le champ [Act_Photo], nom du fichier,
    • une zone texte [ImgLogo] destinée à recevoir la photo,
    • sur l'évennement Détail, Au Formatage introduit le code suivant :
    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
    Private Sub Détail_Format(Cancel As Integer, FormatCount As Integer)
     
        Dim sPath As String
        Dim sFichier As String
        Dim sNoImage As String
        '/ Définition des accès aux images
        sPath = Application.CurrentProject.path
        sFichier = sPath & "\Photos\" & Me.Act_Photo
        sNoImage = sPath & "\Photos\NoImage.jpg"
        msgBox sFichier
        msgBox sNoImage
     
        '/ Test sur l'existance d'un nom d'image
        If IsNull(Me.txt_Act_Photo) Then
            If Dir(sNoImage) <> "" Then 'Si absent
                Me.ImgLogo.Picture = sNoImage
            Else
                Me.ImgLogo.Picture = ""
            End If
        Else
            If Dir(sFichier) <> "" Then 'Si présent
                Me.ImgLogo.Picture = sFichier
            End If
        End If
     
    End Sub
    Lors de l'éxécution, j'ai une "erreur d'éxécution '438' : propriété ou méthôde non gérée par cet objet." sur la ligne 16 ou 22 alors que le chemin et le nom du fichier sont corrects et que le même code fonctionne sur le formulaire [Membres].

    Comment résoudre cette difficulté?

    Jean-Pierre

  2. #2
    Invité
    Invité(e)
    Par défaut
    Bonjour

    Dans cette instruction :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    sNoImage = sPath & "\Photos\NoImage.jpg"
    Qu'est-ce que NoImage.jpg ? Si c'est une variable il faut :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    sNoImage = sPath & "\Photos\" & NoImage & ".jpg"
    Philippe

  3. #3
    Membre éclairé
    Profil pro
    Inscrit en
    Novembre 2010
    Messages
    353
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Novembre 2010
    Messages : 353
    Par défaut
    Bonjour,

    Le fichier "NoImage.jpg" est une photo, fond blanc, avec l'inscription "Photo d'identité". Cette photo est à insérer lorsque je n'ai pas de photo d'identité du membre.

    Jean-Pierre

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

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

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

    Citation Envoyé par jeanpierre78 Voir le message
    • une zone texte [ImgLogo] destinée à recevoir la photo
    Il s'agit bien d'une zone de texte ? Si oui, elle n'a pas de propriété "Picture".

    Il te faut utiliser un contrôle Image.

    D'autre part, tu as une fois Me.Act_Photo et une fois Me.txt_Act_Photo dans ton code.

    Domi2

  5. #5
    Membre éclairé
    Profil pro
    Inscrit en
    Novembre 2010
    Messages
    353
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Novembre 2010
    Messages : 353
    Par défaut
    Bonjour,

    Merci, grâce à tes remarques, j'ai pu orienter mes recherches et j'ai trouvé comment créer un contrôle image :
    • dans la section Détail de l'état, je pose un objet "Image" (menu Insertion, Image...), une image quelconque,
    • dans les propriétés du cadre image et dans l'onglet Format, je supprime le chemin vers l'image,
    • je nomme ce cadre [Ctrl_Image]
    • je pose le champ [Act_Image] dans la section détail de mon état,
    • dans la section Détail de l'état, sur l'événement Au formatage, je pose mon code mis à jour :
      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
          '/
          '/ Le controle image est actualisé lors
          '/ du passage à l'enregistrement suivant
          '/
          Dim sPath As String
          Dim sFichier As String
          Dim sNoImage As String
          '/ Définition des accès aux images
          sPath = Application.CurrentProject.path
          sFichier = sPath & "\Photos\" & Me.Act_Photo
          sNoImage = sPath & "\Photos\NoImage.jpg"
          '/ Test sur l'existance d'un nom d'image
       
          If IsNull(Me.Act_Photo) Then
              If Dir(sNoImage) <> "" Then 'Si absent
                  Me.Ctrl_Image.Picture = sNoImage
              Else
                  Me.Ctrl_Image.Picture = ""
              End If
          Else
              If Dir(sFichier) <> "" Then 'Si présent
                  Me.Ctrl_Image.Picture = sFichier
              End If
          End If
    Et cela fonctionne. L'erreur venait donc de l'absence de contrôle image.

    Jean-Pierre

  6. #6
    Expert confirmé
    Avatar de Domi2
    Homme Profil pro
    Gestionnaire
    Inscrit en
    Juin 2006
    Messages
    7 194
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 65
    Localisation : Suisse

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

    Informations forums :
    Inscription : Juin 2006
    Messages : 7 194
    Par défaut
    C'est normal que tu aies toujours une erreur. Une étiquette n'a pas de propriétés "Picture", donc tu ne peux pas afficher une image dedans.

    Extrait de l'aide :

    La propriété Image (Picture) vous permet de spécifier une image bitmap ou tout autre type de graphique à afficher sur un bouton de commande, un contrôle d'image, un bouton bascule, la page d'un contrôle Onglet ou comme image d'arrière-plan dans un formulaire ou un état.
    Il te faut donc utiliser un contrôle image. Pour l'insérer, en mode modification de ton état, tu ouvres la boîte à outils et tu sélectionnes le petit icone représentant une montagne avec un soleil.

  7. #7
    Membre éclairé
    Profil pro
    Inscrit en
    Novembre 2010
    Messages
    353
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Novembre 2010
    Messages : 353
    Par défaut
    Bonsoir,

    Merci pour la réponse.

    J'ai trouvé comment faire un contrôle image et tout fonctionne.

    Jean-Pierre

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

Discussions similaires

  1. comment afficher une photo dans un état ?
    Par dj_techno dans le forum IHM
    Réponses: 7
    Dernier message: 13/11/2007, 09h13
  2. Photos dans un état
    Par Grozbul dans le forum IHM
    Réponses: 2
    Dernier message: 07/09/2006, 17h43
  3. (access 2002) insertion de photos dans un état
    Par geuneuille dans le forum IHM
    Réponses: 2
    Dernier message: 22/08/2006, 15h09
  4. plusieurs photos dans un état
    Par Anthony17 dans le forum IHM
    Réponses: 5
    Dernier message: 26/07/2006, 17h17
  5. afficher des photos dans un état.
    Par jeck dans le forum IHM
    Réponses: 4
    Dernier message: 02/06/2006, 15h19

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