Déjà évoqué dans un précédent billet, les attributs d'extension sont très utiles et permettent de considérablement simplifier l'écriture de traitements WLangage, tout en améliorant la lisibilité du code.
Combinés avec l'utilisation de procédures internes, les attributs d'extension permettent par exemple de regrouper dans un seul code un ensemble de tâches. Sans procédures internes, le même traitement aurait nécessité de créer plusieurs procédures, définir des automatismes...
Voici un exemple très simple à copier/coller dans un code de clic bouton d'une application WINDEV :
BTN_TEST..Etat = Grisé JAUGE_Infinie est un Champ <- ChampCrée("JAUGE_Infinie" + DonneGUID(),typJaugeInfinie,MoiMême..X,MoiMême..Y,MoiMême..Largeur,MoiMême..Hauteur,Vrai) JAUGE_Infinie..Opacité = 25 JAUGE_Infinie..Altitude = BTN_TEST..Altitude+1
TraitementLong()
PROCEDURE INTERNE TraitementLong () <thread>
ThreadPause(5 s)
FinTraitementLong() FIN
PROCEDURE INTERNE FinTraitementLong <thread principal>
BTN_TEST..Etat = Actif ChampSupprime(JAUGE_Infinie) FIN
A noter que l'attribut <thread principal> ne s'applique naturellement pas dans un site WEBDEV, puisque l'affichage est géré "côté navigateur". L'affichage d'une jauge dans un site web se ferait avec la démarche suivante :
- le code navigateur d'un bouton :
- affiche la jauge ou met en évidence le lancement d'un traitement (popup...),
- lance le traitement via une procédure ajax du serveur avec la fonction AjaxExecuteAsynchrone,
- la procédure navigateur 'callback" rappelée après le traitement serveur par AjaxExecuteAsynchrone, masquer la jauge (ferme la popup...).
|
|
< Retour |
5 commentaires
| Manuel 24/10/2019 - 09:09 - Répondre - En attente de modération Vous devriez préciser que c'est uniquement valable pour Windev, n'est pas autorisé en Webdev. |
|
| |
| | Guillaume BAYLE 24/10/2019 - 10:00 - Répondre - En attente de modération Bonjour, j'ai demandé un complément de la page d'aide dédiée aux attributs afin effectivement d'indiquer leur pertinence par plateformes. Bons développements. |
|
| |
| | jose 05/01/2024 - 22:02 - Répondre - En attente de modération bonjour, j'ai beau chercher, je ne comprends pas comment utiliser l'attribut d’extension pour une procédure interne un exemple? |
|
| |
| | LoicHAMEL 08/01/2024 - 08:47 - Répondre - En attente de modération Bonjour, L'exemple est donné dans l'article. Si vous copier le code fourni vous aurez l'exemple souhaité. |
|
| |
| | josé 13/01/2024 - 18:59 - Répondre - En attente de modération Bonjour, le message efface une partie de mon texte, mon problème est avec l'attribut d'extention "fin traitement", je ne comprends pas comment l'utiliser, et je ne trouve pas d'exemple. merci |
|
| |
| |
|
| |
|