DOCUMENTATION EN LIGNE
DE WINDEVWEBDEV ET WINDEV MOBILE

Aide / Comment le faire / Fenêtres, pages et champs
  • Méthode 1 : Utilisation des événements WLangage associés au champ
  • Méthode 2 : Utilisation de la fonction Evénement
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
Le curseur clavier ("carret") n'est pas toujours facile à repérer dans une fenêtre : il n'est pas évident de savoir dans quel champ on est en train de saisir.
Comment mettre en évidence le champ qui est en cours de saisie ?
Deux méthodes sont disponibles :
Méthode 1 : Utilisation des événements WLangage associés au champ
  • Dans le code d'entrée du champ, changez la couleur de fond et/ou des caractères avec les propriétés CouleurFond et Couleur.
  • Dans le code de sortie du champ, utilisez la couleur du style par défaut pour la couleur de fond et/ou des caractères avec les propriétés CouleurFond et Couleur en utilisant la constante CouleurDéfaut.
Exemple :
// -- Entrée dans le champ
MoiMême.CouleurFond = BleuFoncé
MoiMême.Couleur = Blanc
// Perte de focus
MoiMême.CouleurFond = CouleurDéfaut
MoiMême.Couleur = CouleurDéfaut
Inconvénient : Cette opération doit être effectuée sur chaque champ "manuellement". Cette méthode convient si très peu de champs doivent être modifiés.
Méthode 2 : Utilisation de la fonction Evénement
La fonction Evénement permet d'intercepter dans le projet ou dans chaque fenêtre à traiter les événements de Prise et Perte de focus.
Chacun des événements doit être associé à une procédure WLangage afin de changer la couleur ou remettre la couleur d'origine.
Exemple :
  • Code à saisir dans l'événement "Initialisation" du projet :
    Evénement(ProcColorie, "*.*", 7) // 7 = WM_SETFOCUS
    Evénement(ProcDeColorie, "*.*", 8) // 8 = WM_KILLFOCUS
  • Procédure globale WLangage appelée par la fonction Evénement (prise de focus) :
    PROCÉDURE ProcColorie
    {_EVE.nom, indChamp}..CouleurFond = BleuFoncé
    {_EVE.nom, indChamp}..Couleur = Blanc
  • Procédure globale WLangage appelée par la fonction Evénement (perte de focus) :
    PROCÉDURE ProcDeColorie
    {_EVE.nom, indChamp}..CouleurFond = CouleurDéfaut
    {_EVE.nom, indChamp}..Couleur = CouleurDéfaut
Version minimum requise
  • Version 14
Commentaires
Utilisation de trtxxx
On peut ajouter de façon simple une procédure à un traitement de champ ou de fenêtre avec cette syntaxe "+=" : le traitement ainsi modifié verra la procédure décrite s'exécuter immédiatement après le code du traitement. Cette procédure peut être globale à l'objet ou à la fenêtre ou même au projet.

Par exemple, pour mettre le fond d'un objet en vert lors de la saisie et de nouveau en blanc après la saisie :

MoiMême.Traitement[trtEntrée] += en_vert
MoiMême.Traitement[trtSortie] += en_blanc


PROCÉDURE en_vert()
MoiMême..CouleurFond=VertPastel

PROCÉDURE en_blanc()
MoiMême..CouleurFond=blanc

Merci à Thierry Tilier & à Jopab pour cette excellente idée.
bernard SOBRA
28 mar. 2023

Dernière modification : 08/06/2022

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