DOCUMENTATION EN LIGNE
DE WINDEVWEBDEV ET WINDEV MOBILE

Aide / WLangage / Propriétés WLangage / Propriétés des fenêtres, des pages et de leurs champs
  • Champs de type Numérique (non monétaires)
  • Champs de type Monétaire
  • Champs de type Monétaire + Euro
  • Champs de type Date
  • Champs de type Heure
  • Champs de type DateHeure
  • Champs de type Durée
  • Type de masque d'affichage
  • Expressions régulières dans les masques d'affichagee
  • Limites
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
La propriété MasqueAffichage permet de :
  • Connaître le masque d'affichage.
  • Modifier le masque d'affichage.
Ce masque d'affichage est affiché lorsque le champ est en lecture seule ou lorsque le champ n'a pas le focus.
La propriété MasqueAffichage s'applique :
  • aux champs de saisie de type Numérique, Monétaire, Date, Heure, Durée.
  • aux colonnes de champ Table de type Numérique, Monétaire, Date, Heure, Durée.
  • WINDEVWindows aux champs Combo avec ou sans saisie.
  • WINDEVWindows aux colonnes de champ Table affichées par les combos.
Exemple
SAI_DATE.MasqueSaisie = "JJ/MM/AAAA"
SAI_DATE.MasqueAffichage = "JJJ, le J MMMM AAA"  // ex : "Mardi, le 3 Mars 2011"
WINDEVWindows
// Modification du masque de la colonne d'un champ Table affichée par la combo
COMBO_SaisieTable.COL_ColDate.MasqueAffichage = "JJJ, le J MMMM AAA"
Syntaxe

Connaître le masque d'affichage d'un champ Masquer les détails

<Résultat> = <Champ manipulé>.MasqueAffichage
<Résultat> : Constante ou chaîne de caractères
Masque d'affichage du champ spécifié. Le masque d'affichage dépend du type du champ. Pour plus de détails, consultez les remarques.
<Champ manipulé> : Nom de champ
Nom du champ à manipuler.

Modifier le masque d'affichage d'un champ Masquer les détails

<Champ manipulé>.MasqueAffichage = <Nouveau masque d'affichage>
<Champ manipulé> : Nom de champ
Nom du champ à manipuler.
<Nouveau masque d'affichage> : Constante ou chaîne de caractères
Nouveau masque d'affichage du champ spécifié. Le masque d'affichage dépend du type du champ. Pour plus de détails, consultez les remarques.
Si ce paramètre correspond à une chaîne vide (""), le masque d'affichage sera identique au masque de saisie défini pour le champ.
Remarques

Champs de type Numérique (non monétaires)

Trois types de masques sont disponibles :
  1. Masques d'affichage prédéfinis
  2. Masques d'affichage personnalisés
  3. Masques d'affichage personnalisés spécifiques
1. Masques d'affichage prédéfinis
maskBitcoinMasque numérique utilisé pour manipuler les Bitcoins. Le sigle correspondant au Bitcoin est affiché.
maskNombreSystèmeMasque numérique utilisé par le système.
Correspond au masque sélectionné dans les paramètres régionaux système ("Options régionales" dans le panneau de configuration).
maskScientifiqueMasque numérique permettant d'utiliser la notation scientifique.
maskTailleFichierMasque numérique pour les tailles de fichier et de disque.
Remarque : Le changement d'unité (exemple passage de Ko à Mo) est réalisé à chaque multiple de 1024. Il est donc possible que le masque affiche 1003 Ko.

Exemples :
// Masque Taille de fichier
SAI_Saisie1.MasqueAffichage = maskTailleFichier
SAI_Saisie1 = 5681234 // Affiche 5,68 Mo
// Masque Bitcoin
SAI_Saisie2.MasqueAffichage = maskBitcoin
SAI_Saisie2 = 5681234 // Affiche 0,05 681 234 B
// Masque Scientifique
SAI_Saisie3.MasqueAffichage = maskScientifique
SAI_Saisie3 = 5681234 // Affiche 5,681234E+06
2. Masques d'affichage personnalisés
Les masques d'affichage se définissent à l'aide des caractères : "9", ".", ",", "+" et "-", "$" et espaces.
Par exemple : "99.999,99".
Les masques tiennent compte en affichage des séparateurs décimaux, de milliers et du symbole défini par la langue.
En programmation (quelque soit la langue) :
  • " " (espace) est remplacé par le séparateur de milliers
  • "," (virgule) est remplace par le séparateur décimal
  • "$" est remplacé par le symbole monétaire (il est possible d'écrire "$$" pour ne pas avoir cette substitution)
3. Masques d'affichage personnalisés spécifiques
  • Utilisation du pourcentage % :
    La valeur affectée par programmation au champ est multipliée par 100 et le caractère "%" est affiché.
    Il est possible d'écrire "%%" pour afficher le caractère % sans multiplier la valeur par 100.
    Exemple : Affectation du champ par programmation
    SAI_Saisie1.MasqueAffichage = "999,9%"
    SAI_Saisie1 = 0.562 // Affiche 56,2 %
     
    SAI_Saisie1.MasqueAffichage = "999,9%%"
    SAI_Saisie1 = 0.562 // Affiche 0,6 %
  • Utilisation des parenthèses : affichage des nombres négatifs.
    Exemple :
    SAI_Saisie1.MasqueAffichage = "(999 999)"
    SAI_Saisie1 = -1234      // Affiche (1 234)
    SAI_Saisie1 = 1234       // Affiche 1 234
  • Utilisation du signe - en fin de chaîne : affichage des nombres négatifs (il est possible d'écrire "--" pour afficher le signe - en fin de chaîne)
    Exemple :
    SAI_Saisie1.MasqueAffichage = "999 999 -"
    SAI_Saisie1 = -1234      // Affiche 1 234-
  • Masque d'affichage multiple : masque d'affichage permettant de définir le format des positifs, le format des négatifs, la valeur si 0 est utilisé, la valeur si NULL est utilisé. La syntaxe utilisée est la suivante :
    <Format des positifs>;<Format des négatifs>;<Valeur si 0>;<Valeur si NULL>
    Exemple :
    SAI_Saisie1.MasqueAffichage = "999 999;-999 999;0;<NULL>"
    SAI_Saisie1 = -1234      // Affiche - 1 234

    Remarque : Il est possible de spécifier une couleur en utilisant [<Couleur>] à côté du masque voulu. <Couleur> peut correspondre :
    • à une des constantes suivantes : Rouge, Vert, Bleu, Noir, Blanc, Jaune, Orange
    • à une valeur hexadécimale en utilisant le format "#BBVVRR".
    Exemple :
    SAI_Saisie1.MasqueAffichage = "999 999;-999 999[Rouge];0;<NULL>"
    SAI_Saisie1 = -1234      // Affiche - 1 234 en rouge
     
    SAI_Saisie1.MasqueAffichage = "999 999;-999 999[#FF0000];0;<NULL>"
    SAI_Saisie1 = -1234      // Affiche - 1 234 en bleu

    Note : La couleur spécifiée dans le masque d'affichage est prioritaire sur la propriété Couleur. Elle est ignorée si le champ est grisé.
Remarques :
  • Pour que le nombre saisi soit complété à gauche par des zéros, utilisez le caractère "0" à gauche du masque. Par exemple : "099.999,99".
  • Pour que la partie décimale du nombre saisi soit complétée par des zéros, utilisez le caractère "9" placé à droite de la virgule. Par exemple, en utilisant le masque "9999,99000", le nombre 12 est affiché "12,00" et non pas "12,00000".
    En revanche, le nombre "12,368" est correctement affiché : sa valeur est préservée, sans être tronquée ni arrondie.
  • Pour forcer les signes, utilisez le caractère "+" à gauche. Par exemple : "+9999"

Champs de type Monétaire

Les masques d'affichage sont du même type que les masques numériques. La différence se situe dans la précision : les monétaires ont 17 chiffres significatifs pour la partie entière et 6 décimales maximum.
Par exemple : "99 999 999 999 999 999,999999".
Remarque : Un masque prédéfini peut également être utilisé pour les champs de type Monétaire :
maskMonétaireSystèmeMasque monétaire utilisé par le système. Correspond au masque sélectionné dans les paramètres régionaux système ("Options régionales" dans le panneau de configuration).

Champs de type Monétaire + Euro

Les masques d'affichage sont du même type que les masques monétaires. Il est possible d'ajouter le caractère dollar ("$") dans le masque pour afficher la devise en cours.
Par exemple : "999,99 $" affichera "250,25 E" si la devise en cours est l'Euro.

Champs de type Date

Les masques d'affichage pour les champs de type Date sont :
  • un masque personnalisé :
    • "JJ/MM/AAAA"
    • "JJ/MM/AA"
    • "JJJ JJ"
    • "MM/JJ/AAAA"
    • "MM/JJ/AA"
    • "AAAA/MM/JJ"
    • "AA/MM/JJ"
    • "JJ/MM/AAAA HH:mm:SS"
    • "MM/JJ/AAAA HH:mm:SS"
    • "JJ/MM/AAAA HH:mm:SS:CCC"
    • "MM/JJ/AAAA HH:mm:SS:CCC"
    • "JJJJ JJ MMMM AAAA"
    • "Jjjj JJ Mmmm AAAA"
    • "Jjjj JJ Mmm AAAA"
Un masque personnalisé peut être constitué des éléments suivants :
  • "JJ" (correspondant au jour de la semaine en chiffres, par exemple : 12)
  • "JJJJ" (jour correspondant de la semaine, par exemple "Jeudi"). La casse utilisée dépend des options linguistiques du projet.
  • "Jjjj" (correspondant au jour de la semaine avec la première lettre forcée en majuscule, par exemple : Lundi)
  • "jjjj" (correspondant au jour de la semaine avec la première lettre forcée en minuscule, par exemple : lundi)
  • "JJJ" (abréviation du jour de la semaine, par exemple "Jeu"). La casse utilisée dépend des options linguistiques du projet.
  • "Jjj" (abréviation du jour de la semaine avec la première lettre forcée en majuscule, par exemple : Lun)
  • "jjj" (abréviation du jour de la semaine avec la première lettre forcée en minuscule, par exemple : lun)
  • "MM" (mois en chiffres, par exemple : 12)
  • "MMMM" (mois en toutes lettres, par exemple "Janvier"). La casse utilisée dépend des options linguistiques du projet.
  • "Mmmm" (mois en toutes lettres avec la première lettre forcée en majuscule, par exemple : Janvier)
  • "mmmm" (mois en toutes lettre avec la première lettre forcée en minuscule, par exemple : janvier)
  • "MMM" (abréviation du mois, par exemple "Jan"). La casse utilisée dépend des options linguistiques du projet.
  • "Mmm" (abréviation du mois avec la première lettre forcée en majuscule, par exemple : Jan)
  • "mmm" (abréviation du mois avec la première lettre forcée en minuscule, par exemple : jan)
  • "AAAA" (l'année sur quatre chiffres, par exemple "2001")
  • "AA" (deux derniers chiffres de l'année, par exemple "01")
  • une constante correspondant à un masque prédéfini :
    maskDateDuréeRelativeMasque permettant d'exprimer la durée écoulée (ou à venir) entre la date du jour et la date spécifiée. Ce masque est exprimé en langage naturel. Les différentes formulations utilisées sont configurables dans la description du projet pour la langue en cours :
    1. Sous le volet "Projet", dans le groupe "Projet", cliquez sur "Description".
    2. Dans l'onglet "Langues" :
      • sélectionnez la langue à configurer.
      • sélectionnez l'onglet "Date".
    3. Cliquez sur le bouton "Dates et Heures en langage naturel".
    4. Définissez les libellés personnalisés à utiliser si nécessaire. Ces libellés seront utilisés :
      • pour le résultat de la fonction DateVersChaîne.
      • pour les champs utilisant le masque d'affichage "Durée relative".
    maskDateEmailLe format utilisé correspond au format de date de la norme RFC-5322 utilisé pour l'encryption d'un mail, d'un flux RSS, ...
    Le résultat est exprimé dans le fuseau horaire local.
    Java Non disponible.
    maskDateEmailUTCLe format utilisé correspond au format de date de la norme RFC-5322 utilisé pour l'encryption d'un mail, d'un flux RSS, ...
    Le résultat est exprimé en temps universel (UTC).
    Java Non disponible.
    maskDateInternetLe format utilisé correspond au format de date de la norme RFC-3339 utilisé pour les communications internationales.
    Le résultat est exprimé dans le fuseau horaire local.
    maskDateInternetUTCLe format utilisé correspond au format de date de la norme RFC-3339 utilisé pour les communications internationales.
    Le résultat est exprimé en temps universel (UTC).
    maskDateSystème
    Masque système défini dans la description du projet pour la langue en cours :
    1. Sous le volet "Projet", dans le groupe "Projet", cliquez sur "Description".
    2. Sélectionnez l'onglet "Langues" puis l'onglet "Date".
    3. Le format utilisé correspond :
      • soit aux paramètres du système d'exploitation,
      • soit aux paramètres spécifiés (avec les jours et mois définis).
Il est possible de combiner ces masques. Par exemple : "Le Jjj JJ Mmmm AAAA à HH:mm" donnera un résultat de la forme "Le Jeu 01 Février 1979 à 21:35".

Champs de type Heure

Les masques d'affichage pour les champs de types heure sont :
  • "HH:MM"
  • "HH h MM"
  • "HH:MM:SS"
  • "HH:MM:SS AM" : Permet de gérer l'heure au format AM/PM.
  • "HH:MM:SS:CC"
  • le masque prédéfini correspondant à l'heure système. L'heure système dépend du masque sélectionné dans les paramètres régionaux système ("Options régionales" dans le panneau de configuration).
    maskHeureSystèmeMasque utilisé par le système pour l'heure.

Champs de type DateHeure

Pour spécifier un masque d'affichage de type DateHeure, il est nécessaire de :
  1. Passez le type du champ (ou de la colonne de table) en type Date (onglet "Détail" de la fenêtre de description du champ ou de la colonne).
  2. Modifiez le masque d'affichage de ce champ ou de cette colonne (onglet "Détail" de la fenêtre de description du champ ou de la colonne, ou propriété MasqueAffichage).

Champs de type Durée

Les éléments suivants peuvent être utilisés pour définir un masque personnalisé (attention, il est nécessaire de respecter la casse). Pour présenter les masques personnalisés, nous allons prendre une durée égale à 0 jour 04 heures 15 minutes 03 secondes et 412 millièmes de seconde :
  • +1 : seule l'unité la plus significative sera affichée (dans notre exemple, seul le nombre d'heures sera affiché).
  • +2 : seules les deux unités les plus significatives seront affichées (dans notre exemple, seuls le nombre d'heures et le nombre de minutes seront affichés).
    Il est également possible de spécifier '+3' ou '+4' pour afficher uniquement les trois ou les quatre unités les plus significatives.
  • J : le nombre de jours sera affiché si ce nombre est supérieur à 0 (dans notre exemple, le nombre de jours ne sera pas affiché).
  • H : le nombre d'heures sera affiché si ce nombre ou le nombre de jours est supérieur à 0. Si ce nombre est composé d'un seul chiffre, seul ce chiffre sera affiché (dans notre exemple, le nombre d'heures sera '4').
  • HH : le nombre d'heures sera affiché si ce nombre ou le nombre de jours est supérieur à 0. Si ce nombre est composé d'un seul chiffre, ce chiffre sera précédé du chiffre '0' (dans notre exemple, le nombre d'heures sera '04').
  • M : le nombre de minutes sera affiché si ce nombre ou le nombre d'une durée supérieure (nombre de jours ou d'heures) est supérieur à 0. Si ce nombre est composé d'un seul chiffre, seul ce chiffre sera affiché (dans notre exemple, le nombre de minutes sera '15').
  • MM : le nombre de minutes sera affiché si ce nombre ou le nombre d'une durée supérieure (nombre de jours ou d'heures) est supérieur à 0. Si ce nombre est composé d'un seul chiffre, ce chiffre sera précédé du chiffre '0' (dans notre exemple, le nombre de minutes sera '15').
  • S : le nombre de secondes sera affiché si ce nombre ou le nombre d'une durée supérieure (nombre de jours, d'heures ou de minutes) est supérieur à 0. Si ce nombre est composé d'un seul chiffre, seul ce chiffre sera affiché (dans notre exemple, le nombre de secondes sera '3').
  • SS : le nombre de secondes sera affiché si ce nombre ou le nombre d'une durée supérieure (nombre de jours, d'heures ou de minutes) est supérieur à 0. Si ce nombre est composé d'un seul chiffre, ce chiffre sera précédé du chiffre '0' (dans notre exemple, le nombre de secondes sera '03').
  • CC : le nombre de centièmes de seconde sera affiché (dans notre exemple, le nombre de centièmes de seconde sera '41').
  • CCC : le nombre de millièmes de seconde sera affiché (dans notre exemple, le nombre de millièmes de seconde sera '412').
Remarques :
  • Si le séparateur correspond au caractère ":", la lettre correspondant à l'unité la plus significative sera ajoutée (lettre 'h' pour heure, 'm' pour minute, 's' pour seconde, 'cs' pour centièmes de seconde et 'ms' pour millièmes de seconde).
  • Pour afficher une durée dans un champ de saisie au format heures/minutes (au lieu de jours/heures/minutes), il est nécessaire de définir un masque du type : "+5 HHhMMm", où "+5" désigne le nombre de chiffres à afficher pour les heures.

Type de masque d'affichage

Le changement d'un masque peut se faire uniquement avec un masque de même type. Par exemple, il est impossible de remplacer le masque d'affichage d'un champ de type DATE par un masque d'affichage de type HEURE.
L'affectation d'un masque d'affichage incorrect entraîne un message d'erreur.

Expressions régulières dans les masques d'affichagee

Les expressions régulières utilisées dans cette propriété ne doivent pas être celles utilisées dans la fonction VérifieExpressionRégulière.
Dans les masques d'affichage, les expressions régulières permettent d'empêcher l'affichage de certains caractères ou d'une séquence de caractères.
Dans la fonction VérifieExpressionRégulière, les expressions régulières permettent de vérifier si une chaîne est conforme à un format.
Exemple : Vérification que la chaîne T1 contient une lettre et un chiffre :
  • avec la fonction VérifieExpressionRégulière : l'expression régulière utilisée est [A-Za-z][0-9]
  • avec la propriété MasqueAffichage : l'expression régulière utilisée est [A-Za-z]{0,1}[0-9]{0,1}

Limites

Dans une fenêtre, la propriété MasqueAffichage s'applique uniquement aux :
  • champs de saisie de type Numérique, Monétaire, Date, Heure, Durée,
  • colonnes des champs Table de type Numérique, Monétaire, Date, Heure, Durée,
  • groupes de champs de saisie,
  • WINDEVWindows champs Combo avec ou sans saisie.
  • WINDEVWindows colonnes de champ Table affichées par les combos.
La propriété MasqueAffichage ne s'applique pas aux champs d'un état.
Version minimum requise
  • Version 17
Documentation également disponible pour…
Commentaires
Cliquez sur [Ajouter] pour publier un commentaire

Dernière modification : 26/05/2023

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