Warning: count(): Parameter must be an array or an object that implements Countable in /homepages/41/d573887948/htdocs/agencedigitale/blog/wp-content/themes/avada/includes/class-avada-nav-walker.php on line 339

Onglet « dynamique » Windev (2)

//Onglet « dynamique » Windev (2)

Onglet « dynamique » Windev (2)

Le champ Onglet « dynamique » permet d’afficher plusieurs fenêtres internes dans une même fenêtre sous forme de volets.

La sauvegarde des paramètres de la fenêtre interne est réalisée lors de l’appel à l’ouverture du volet : en effet, c’est le seul moment où il est possible d’avoir accès aux paramètres de la fenêtre interne. Pour récupérer facilement les para­mètres, l’idée est de surcharger la fonction OngletOuvre du WLangage pour mémoriser les paramètres de la fenêtre interne avant d’ouvrir réellement le volet par la fonction OngletOuvre. La récupération des paramètres de la fenêtre interne se fait via le mot-clé MesParamètres du WLangage.

PROCEDURE OngletOuvre( …
oChampOnglet est un Champ, slibelleVolet est une chaîne, sFenêtreinterne est une chaîne ,*)
11 Remplit un tableau de variants 11 pour les paramètres du volet tabParam est un tableau de Variants
POUR i = 4 _A_
MesParamètres .. Nb Reçus
Ajoute(tabParam, MesParamètres[i]) FIN

Toutes les informations relatives aux volets sont ensuite mémorisées dans un tableau global. Ce tableau peut facilement être séria­lisé dans un buffer puis sauvé (dans un fichier, dans une rubrique d’un fichier de données, … ).

Chargement de la configuration des volets

Pour charger une configuration de volets,
il est nécessaire d’appeler la fonction OngletOuvre avec les mêmes paramètres d’appel utilisés lors de la création initiale de l’onglet: libellé, fenêtre interne et paramètres.
Cette opération peut être effectuée uniquement via la compilation dyna­mique: le but est de reconstruire la ligne de commande de la fonction, avec les mêmes paramètres, puis de demander au WLangage d’exécuter le code présent dans cette ligne de commande.

// Construit le code d’appel sCodeWL = ChaîneConstruit( …
OngletOuvre( %1,1111%21111, »11%3″1111,
sNomCompletChampOnglet, slibelleVolet, sFenêtreinterne)

// Ajoute les paramètres de la 11 fenêtre interne au code d’appel POUR i = 1 _A_
tabParametres .. Occurrence sCodeWL += [« , »] +
« tabParametres[« +i + « ] » FIN
Il Termine la ligne de code sCodeWL += « ) »
// Exécute le code ExécuteCode(sCodeWL)

Important: la fonction ExécuteCode exécute par défaut une fonction du WLangage. Pour surcharger une fonction du WLangage et l’ap­peler via la fonction ExécuteCode, il faut créer une procédure de rebond associée à cette fonction et appeler cette procédure de rebond dans la fonction ExécuteCode.

Pour mémoriser la configuration d’un champ Onglet dynamique, il suffit de charger la configuration du champ en ini­tialisation de fenêtre.

// Charge la configuration OngletConfigurationCharge( …
ONG_Clients)

Création d’un volet par le bouton »+ »
Si le champ Onglet dynamique propose l’ajout de volets via le bouton « + « , il est nécessaire de surcharger le traitement « Création d’un volet » pour « court-circuiter » l’ajout automa­tique et utiliser la procédure OngletOuvre du composant interne.

// Ouvre le volet par défaut OngletOuvre(ONG_ Clients, »Nouvel onglet »,FI. Client)
// Bloque le traitement
// (le volet est déjà créé) RepriseSaisie(ONG Clients)

ATTENTION : Pour gérer par programmation la mémorisation des onglets, il est nécessaire de désactiver la mémorisation automatique de la configuration des volets.

By | 2018-01-03T11:26:50+00:00 janvier 3rd, 2018|Categories: Windev|0 Comments

About the Author:

Leave A Comment

This Is A Custom Widget

This Sliding Bar can be switched on or off in theme options, and can take any widget you throw at it or even fill it with your custom HTML Code. Its perfect for grabbing the attention of your viewers. Choose between 1, 2, 3 or 4 columns, set the background color, widget divider color, activate transparency, a top border or fully disable it on desktop and mobile.

This Is A Custom Widget

This Sliding Bar can be switched on or off in theme options, and can take any widget you throw at it or even fill it with your custom HTML Code. Its perfect for grabbing the attention of your viewers. Choose between 1, 2, 3 or 4 columns, set the background color, widget divider color, activate transparency, a top border or fully disable it on desktop and mobile.