DOCUMENTATION EN LIGNE
DE WINDEVWEBDEV ET WINDEV MOBILE

Aide / WLangage / Fonctions WLangage / Champs, pages et fenêtres / Fonctions de gestion des fenêtres
  • Evénement "Demande de mise à jour de l'affichage"
  • Attribut "présentation"
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
Demande l'exécution de l'événement "Demande de mise à jour de l'affichage" (et rend la main sans attendre l'exécution de l'événement).
Cette fonction est notamment utilisée :
  • dans le cadre d'une mise à jour de l'UI via des threads.
Remarque : Cette fonction est équivalente à la fonction DemandeMiseAJourIHM.
Exemple
// Traitement d'enregistrement
// L'interface graphique devra être mise à jour
DemandeMiseAJourUI()
// -----------------------------------------------------------------
// -- Evénement Demande de mise à jour de l'affichage de FEN_Fiche_Contact
// Mise à jour du titre de la fenêtre
MoiMême.Titre = gpclFicheContact.p_sNomComplet

// Mise à jour des champs liés de la fenêtre
SourceVersEcran()
Syntaxe
DemandeMiseAJourUI([<Paramètre 1> [... [, <Paramètre N>]]])
<Paramètre 1> : Paramètre optionnel correspondant au type attendu par l'événement "Demande de mise à jour de l'affichage"
Premier paramètre à passer à l'événement "Demande de mise à jour de l'affichage" de la fenêtre.
<Paramètre N> : Type de la valeur attendue par l'événement "Demande de mise à jour de l'affichage"
Nième paramètre à passer à l'événement "Demande de mise à jour de l'affichage" de la fenêtre.
Remarques

Evénement "Demande de mise à jour de l'affichage"

Un des événements associés à la fenêtre est l'événement "Demande de mise à jour de l'affichage". Cet événement permet de regrouper le code de mise à jour des champs de la fenêtre : contenu des champs, état (visible, grisé, ...), libellé à mettre à jour, ... Cet événement est disponible sur les fenêtres, fenêtres internes, pages, pages internes, modèles de champs et superchamps.
Cet événement peut attendre des paramètres. Il suffit de déclarer une procédure dans l'événement. Par exemple :
// Demande de mise à jour de l'affichage
PROCÉDURE DemandeMiseAjour(TypeMiseAJour est un booléen)
Cet événement est lancé sur demande grâce aux fonctions :
  • DemandeMiseAJourUI : Exécute l'événement "Demande de mise à jour de l'affichage" de l'élément en cours à la fin du traitement en cours (lancement asynchrone).
  • ExécuteMiseAJourUI : Exécute immédiatement l'événement "Demande de mise à jour de l'affichage" de l'élément en cours.
  • DemandeMiseAJourUIÉlément : Exécute l'événement "Demande de mise à jour de l'affichage" de l'élément spécifié à la fin du traitement en cours (lancement asynchrone).
  • ExécuteMiseAJourUIÉlément : Exécute immédiatement l'événement "Demande de mise à jour de l'affichage" de l'élément spécifié.
  • DemandeMiseAJourUIParent : Exécute l'événement "Demande de mise à jour de l'affichage" du niveau supérieur à la fin du traitement en cours (lancement asynchrone).
  • ExécuteMiseAJourUIParent : Exécute immédiatement l'événement "Demande de mise à jour de l'affichage" du niveau supérieur.
Lors de l'appel de ces fonctions, il est possible de préciser la valeur des paramètres attendus par l'événement "Demande de mise à jour de l'affichage".
Remarques :
  • L'élément dont l'événement "Demande de mise à jour de l'affichage" est exécuté dépend du code depuis lequel la fonction DemandeMiseAJourUI a été appelé. S'il s'agit d'une classe ayant l'attribut présentation, l'élément considéré sera la fenêtre associée à la classe, sinon ce sera l'élément depuis lequel le code a été lancé.
  • Si la fonction DemandeMiseAJourUI est appelée plusieurs fois, les nouveaux appels utilisant les mêmes paramètres que des appels encore non exécutés sont ignorés.
  • Si la fonction DemandeMiseAJourUI est appelée dans le thread principal, la ou les exécutions de l'événement "Demande de mise à jour de l'affichage" se feront à la fin du traitement en cours.
  • Si la fonction DemandeMiseAJourUI est appelée dans un thread secondaire, la ou les exécutions de l'événement "Demande de mise à jour de l'affichage" se feront lors du rafraichissement de la fenêtre.
Universal Windows 10 AppAndroidiPhone/iPad

Attribut "présentation"

L'attribut présentation permet d'associer une classe de la couche présentation à une vue (fenêtre, page ou état).
Cet attribut est utilisé notamment lors de la déclaration globale des fenêtres générées par le RAD MVP sous WINDEV.
Par exemple :
PROCÉDURE FEN_Table_MonFichierExemple(...
	gclPresentation est un PTableMonFichierExemple dynamique<présentation>=Null)
Grâce à cet attribut, l'appel de l'événement "Demande de mise à jour de l'affichage" de la fenêtre sera déclenché par :
  • tout appel à la fonction DemandeMiseAJourUI depuis une classe déclarée comme <présentation>,
  • tout appel depuis toute classe associée à la classe <présentation>.
Pour plus de détails, consultez RAD MVP : Attribut "présentation".
Liste des exemples associés :
WM Découverte MVP Exemples multiplateforme (WINDEV Mobile) : WM Découverte MVP
[ + ] Cet exemple montre la mise en oeuvre d'une architecture MVP (Modèle Vue Présentation) dans un projet. Cet exemple est ici simplifié afin de pouvoir comprendre les concepts de cette architecture.
WD Découverte MVP - Partie 1 Exemples didactiques (WINDEV) : WD Découverte MVP - Partie 1
[ + ] Cet exemple didactique présente la mise en oeuvre d'une architecture MVP (Modèle Vue Présentation) dans un projet. Cet exemple est ici simplifié afin de pouvoir comprendre les concepts de cette architecture.
WD Découverte MVP - Partie 2 Exemples didactiques (WINDEV) : WD Découverte MVP - Partie 2
[ + ] Cet exemple didactique présente la mise en oeuvre d'une architecture MVP (Modèle Vue Présentation) dans un projet pour une analyse simple (Client - Commande - Ligne de commande - Produit).

Plusieurs types de vues (et leur présentation) sont proposés :
- table (avec ajout, modification, suppression et impression),
- fiche,
- recherche (avec filtre).
WD ThreadUI Exemples didactiques (WINDEV) : WD ThreadUI
[ + ] L'utilisation de threads ou de tâches parallèles est très souvent obligatoire afin de répondre au besoin de rapidité des utilisateurs.
Avec le WLangage de WINDEV, le lancement de traitements en tâche de fond est simplifié à l'extrême avec :
- les fonctions de gestion des threads,
- le type Thread,
- les tâches parallèles.
Mais attention, s'il est facile de lancer un traitement en arrière plan, il faut néanmoins être précautionneux sur l'UI de l'application : seuls les traitements exécutés dans le thread principal sont autorisés à mettre à jour l'interface (affecter un champ, remplir une liste, combo, table, zone répétée...).
Cet exemple vous montre 4 façons de mettre à jour l'UI de vos applications avec des données provenant de threads secondaires.
Composante : wd300vm.dll
Version minimum requise
  • Version 25
Documentation également disponible pour…
Commentaires
Cliquez sur [Ajouter] pour publier un commentaire

Dernière modification : 13/05/2024

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