DOCUMENTATION EN LIGNE
DE WINDEVWEBDEV ET WINDEV MOBILE

Aide / Développer une application ou un site / Champs, fenêtres et pages / Champs : Types disponibles / Champ Image
  • Caractéristiques de la rubrique
  • Comment le faire ?
  • Stocker les images dans le fichier de données sous forme de rubrique Texte
  • Stocker les images dans le fichier de données sous forme de rubrique "Image"
  • Récupérer le contenu de l'image dans une rubrique
  • Vignettes HFSQL
WINDEV
WindowsLinuxUniversal Windows 10 AppJavaEtats et RequêtesCode Utilisateur (MCU)
WEBDEV
WindowsLinuxPHPWEBDEV - Code Navigateur
WINDEV Mobile
AndroidWidget AndroidiPhone/iPadWidget IOSApple WatchMac CatalystUniversal Windows 10 App
Autres
Procédures stockées
Champ Image lié à une rubrique
Caractéristiques de la rubrique
Un champ Image peut correspondre à une rubrique d'un fichier de données, d'une requête, ... Deux types de rubriques peuvent être associés à un champ Image :
  • Soit une rubrique de type "Texte" : l'information stockée est le chemin de l'image.
  • Soit une rubrique de type "Son, image, binaire" : l'information stockée est l'image elle-même.
Dans les deux cas, le champ Image permet d'afficher les informations contenues dans le fichier de données.
Comment le faire ?

Stocker les images dans le fichier de données sous forme de rubrique Texte

Cette solution permet de stocker dans le fichier de données le chemin des images.
Pour gérer les images sous forme de rubrique Texte :
  1. Dans l'éditeur d'analyses :
    • Créez une rubrique de type Texte (par exemple PHOTO_Chemin). Cette rubrique va permettre de stocker le chemin permettant d'accéder à l'image.
    • Pensez à modifier la taille de cette rubrique (mettre par exemple 255 caractères).
    • Dans les informations partagées de la rubrique, ce champ est associé à un champ de saisie.
    • Générez l'analyse pour prendre en compte les modifications.
  2. Dans la fenêtre (ou la page) devant permettre de saisir / visualiser l'image :
    • Créez un champ Image (dans notre exemple IMG_Photo). Ce champ Image n'est relié à aucune rubrique.
    • Créez un champ de saisie lié à la rubrique PHOTO_Chemin (dans notre exemple, ce champ s'appelle SAI_Photo).
      Pour créer ce champ, vous pouvez par exemple réaliser un "Drag and Drop" de la rubrique présente dans le volet "Analyse" vers votre fenêtre/page.
      Ce champ permet à l'utilisateur d'indiquer le chemin du fichier image à utiliser. Il est possible d'ajouter à côté de ce champ un bouton permettant de sélectionner l'image voulue. L'événement "Clic" du champ Bouton peut contenir par exemple le code suivant :
      // Ouvre un sélecteur d'image
      SAI_Photo = fSélecteurImage("c:\mes documents", "", "Sélectionnez la photo du client")
      // Exécute l'événement "A chaque modification" du champ de saisie SAI_Photo 
      // pour mettre Ã  jour le champ Image
      ExécuteTraitement(SAI_Photo, trtModification)
    • Dans l'événement "A chaque modification" de ce champ, saisissez par exemple le code suivant :
      SI fFichierExiste(MoiMême) = Vrai ALORS
      IMG_Photo = MoiMême
      SINON
      IMG_Photo = ""
      FIN

      Ce code permet de :
      • vérifier l'existence du fichier image.
      • afficher l'image dans le champ Image. Il suffit d'affecter le chemin de l'image au champ Image pour que l'image soit affichée. Si l'image n'existe pas, aucune image n'est affichée.
    • Lors de l'affichage de la fenêtre / de la page, forcez si nécessaire l'exécution de l'événement "A chaque modification" du champ grâce à la fonction ExécuteTraitement. Par exemple :
      ExécuteTraitement(SAI_Photo, trtModification)
  3. L'enregistrement des informations dans le fichier de données sera effectué automatiquement lors de l'utilisation :
Le chemin de l'image sera automatiquement enregistré dans la rubrique de type Texte.

Stocker les images dans le fichier de données sous forme de rubrique "Image"

Cette solution permet de stocker directement dans le fichier de données les images.
Pour gérer les images sous forme de rubrique "Image" :
  1. Dans l'éditeur d'analyses :
    • Créez une rubrique de type "Son, image, binaire" (par exemple PHOTO_Image). Cette rubrique va permettre de stocker l'image.
    • Dans l'onglet "Général" de la rubrique, indiquez le sous-type "Image (mémo binaire)".
    • Dans les informations partagées de la rubrique, ce champ est associé à un champ Image.
    • Générez l'analyse pour prendre en compte les modifications.
  2. Dans la fenêtre (ou la page) devant permettre de saisir / visualiser l'image :
    • Créez un champ Image (dans notre exemple IMG_Photo). Ce champ Image est relié à la rubrique "Son, image, binaire" créée dans l'analyse. Pour créer ce champ, vous pouvez par exemple réaliser un "Drag and Drop" de la rubrique présente dans le volet "Analyse" vers votre fenêtre / page.
    • Créez si nécessaire un champ de saisie (dans notre exemple SAI_Photo). Ce champ permet à l'utilisateur d'indiquer le chemin du fichier image à utiliser. Ce champ n'est lié à aucune rubrique. Il est possible d'ajouter à côté de ce champ un bouton permettant de sélectionner l'image voulue. L'événement "Clic" du champ Bouton peut contenir par exemple le code suivant :
      // Ouvre un sélecteur d'image
      SAI_Photo = fSélecteurImage("c:\mes documents", "", "Sélectionnez la photo du client")
      // Exécute l'événement "A chaque modification" du champ de saisie SAI_Photo 
      // pour mettre Ã  jour le champ Image
      ExécuteTraitement(SAI_Photo, trtModification)
    • Dans l'événement "A chaque modification" de ce champ, saisissez par exemple le code suivant :
      SI fFichierExiste(MoiMême) = Vrai ALORS
      IMG_Photo = MoiMême
      SINON
      IMG_Photo = ""
      FIN

      Ce code permet de :
      • vérifier l'existence du fichier image.
      • afficher l'image dans le champ Image. Il suffit d'affecter le chemin de l'image au champ Image pour que l'image soit affichée. Si l'image n'existe pas, aucune image n'est affichée.
  3. L'enregistrement des informations dans le fichier de données sera effectué automatiquement lors de l'utilisation :
L'image sera alors automatiquement enregistrée dans la rubrique de type "Son, image, binaire".
Récupérer le contenu de l'image dans une rubrique
1er cas : les champs de la fenêtre ou de la page sont associés à des rubriques d'un fichier de données (Binding)
Toutes les rubriques du fichier (ou d'un fichier relié) associées à un champ de la fenêtre ou de la page seront mises à jour par :
2ème cas : les champs de la fenêtre ou de la page ne sont pas associés à des rubriques d'un fichier de données
Il est nécessaire pour chaque rubrique de récupérer la valeur de chaque champ grâce à la syntaxe suivante :
<Fichier de données>.<Rubrique> = <Nom du champ>
Pour une rubrique de type mémo binaire : Il est nécessaire de réaliser une affectation champ par champ grâce à la fonction HAttacheMémo.
Vignettes HFSQL
La rubrique liée au champ Image peut utiliser des vignettes HFSQL. Dans ce cas, l'affichage des images sera optimisé.
Pour plus de détails, consultez Vignettes HFSQL.
Voir Aussi
Version minimum requise
  • Version 9
Documentation également disponible pour…
Commentaires
Cliquez sur [Ajouter] pour publier un commentaire

Dernière modification : 25/05/2022

Signaler une erreur ou faire une suggestion | Aide en ligne locale