|
- Evénements gérés par défaut
- Evénements optionnels
- Présentation
- Evénements optionnels spécifiques : Tirer pour rafraîchir
Evénements associés aux fenêtres internes
Evénements gérés par défaut Versions 16 et supérieures Nouveauté 16 Versions 17 et supérieures Nouveauté 17 Versions 20 et supérieures Nouveauté 20Attention : Ne confondez pas "Champ Fenêtre Interne" et "Fenêtre interne" : le champ "Fenêtre interne" est un type de champ et la "Fenêtre interne" est un type de fenêtre. Versions 17 et supérieuresWINDEV et WINDEV Mobile gèrent par défaut les événements suivants pour les champs "Fenêtre interne" : | | Evénement | Condition d'exécution |
---|
Sélection par balayage | Fenêtre interne avec parcours par balayage. Exécuté après que la nouvelle fenêtre interne ait été affichée et chargée. | Après chargement de la fenêtre interne | Exécuté lors du changement de la fenêtre interne avec la fonction ChangeFenêtreSource. Cet événement est exécuté après l'événement "Déclarations globales" et l'événement "Initialisation" de la nouvelle fenêtre interne. Cet événement permet par exemple d'initialiser des champs, de restaurer des valeurs dans la fenêtre interne. | Avant déchargement de la fenêtre interne | Exécuté lors du changement de la fenêtre interne avec la fonction ChangeFenêtreSource. Cet événement est exécuté avant l'événement de fermeture de la fenêtre interne initiale. Cet événement permet par exemple de sauvegarder les valeurs présentes dans la fenêtre interne. |
Nouveauté 17WINDEV et WINDEV Mobile gèrent par défaut les événements suivants pour les champs "Fenêtre interne" : | | Evénement | Condition d'exécution |
---|
Sélection par balayage | Fenêtre interne avec parcours par balayage. Exécuté après que la nouvelle fenêtre interne ait été affichée et chargée. | Après chargement de la fenêtre interne | Exécuté lors du changement de la fenêtre interne avec la fonction ChangeFenêtreSource. Cet événement est exécuté après l'événement "Déclarations globales" et l'événement "Initialisation" de la nouvelle fenêtre interne. Cet événement permet par exemple d'initialiser des champs, de restaurer des valeurs dans la fenêtre interne. | Avant déchargement de la fenêtre interne | Exécuté lors du changement de la fenêtre interne avec la fonction ChangeFenêtreSource. Cet événement est exécuté avant l'événement de fermeture de la fenêtre interne initiale. Cet événement permet par exemple de sauvegarder les valeurs présentes dans la fenêtre interne. |
WINDEV et WINDEV Mobile gèrent par défaut les événements suivants pour les champs "Fenêtre interne" :
| | Evénement | Condition d'exécution |
---|
Sélection par balayage | Fenêtre interne avec parcours par balayage. Exécuté après que la nouvelle fenêtre interne ait été affichée et chargée. | Après chargement de la fenêtre interne | Exécuté lors du changement de la fenêtre interne avec la fonction ChangeFenêtreSource. Cet événement est exécuté après l'événement "Déclarations globales" et l'événement "Initialisation" de la nouvelle fenêtre interne. Cet événement permet par exemple d'initialiser des champs, de restaurer des valeurs dans la fenêtre interne. | Avant déchargement de la fenêtre interne | Exécuté lors du changement de la fenêtre interne avec la fonction ChangeFenêtreSource. Cet événement est exécuté avant l'événement de fermeture de la fenêtre interne initiale. Cet événement permet par exemple de sauvegarder les valeurs présentes dans la fenêtre interne. |
WINDEV et WINDEV Mobile gèrent par défaut les événements suivants pour les fenêtres internes :
| | Evénement | Condition d'exécution |
---|
Déclarations globales | Déclaration des variables globales à la fenêtre. C'est le premier code exécuté lors de l'ouverture de la fenêtre. Ce code est exécuté avant le code de déclaration des globales de la fenêtre hôte (fenêtre dans laquelle la fenêtre interne est intégrée). Il est par exemple possible d'appeler une procédure de la fenêtre interne depuis le code de déclaration des globales de la fenêtre hôte. | Fin d'initialisation | Exécuté lors de l'ouverture de la fenêtre. L'ordre d'exécution des événements est le suivant :- Initialisation des champs de la fenêtre
- Initialisation de la fenêtre
- Prise de focus
| Fermeture | Exécuté lors de la fermeture de la fenêtre. Remarque : Une reprise de saisie sur un des champs de la fenêtre dans ce code empêche la fenêtre de se fermer. | Versions 20 et supérieures Nouveauté 20 | 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 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 : Lors de l'appel de ces fonctions, il est possible de préciser la valeur des paramètres attendus par l'événement. | Entrée | Exécuté lors de l'entrée du curseur dans le champ Fenêtre Interne. | Sortie | Exécuté lors du changement de champ (passage du champ Fenêtre interne à un autre champ de la fenêtre). | A chaque modification | Exécuté à chaque modification du contenu du champ | Affectation de la propriété ..Valeur | Exécuté à chaque affectation de la propriété ..Valeur sur la Fenêtre Interne (affectation directe ou effectuée avec la propriété Valeur). Ce code permet par exemple de récupérer des paramètres passés à la fenêtre interne. | Récupération de la propriété ..Valeur | Exécuté à chaque récupération de la propriété ..Valeur de la fenêtre interne. Ce code permet par exemple à la fenêtre interne de renvoyer une valeur à la fenêtre accueillant le champ Fenêtre Interne. |
Présentation Plusieurs événements optionnels peuvent être gérés. Pour ajouter un événement optionnel : - Sélectionnez le champ voulu.
- Affichez la fenêtre de code de ce champ (touche F2).
- Cliquez sur le lien "Ajouter d'autres événements à xxx" situé à la fin de la fenêtre de code, après le dernier événement.
- La totalité des événements optionnels disponibles pour le champ est affichée.
- Cochez l'événement optionnel à ajouter et validez.
Remarque : Il est possible de sélectionner plusieurs événements optionnels. - L'événement optionnel sélectionné est automatiquement ajouté dans les événements gérés par le champ.
Pour désactiver un événement optionnel, il suffit d'effectuer les mêmes manipulations pour afficher la liste des événements optionnels. Il suffit ensuite de décocher les événements optionnels à supprimer. Remarque : Si le code désactivé contient du code WLangage, ce code est automatiquement supprimé. Il est ainsi possible de gérer par exemple : - le survol du champ par la souris,
- le bouton gauche enfoncé, relâché, avec un double-clic,
- le bouton droit enfoncé, relâché, avec double-clic,
- la roulette de la souris, ...
Versions 20 et supérieures Nouveauté 20
Documentation également disponible pour…
|
|
|
| |
| Ordre des traitements et affichage des données |
|
| Lors de l'Affichage de la fenêtre, le traitement "Demande de mise à jour de l'affichage" est appelé AVANT la "Fin d'initialisation".
Dans ce cas, FenInitialisée() sera faux dans "Demande de mise à jour de l'affichage".
Afin d'afficher les données APRÈS la "Fin d'initialisation" il faut appeler DemandeMiseAJourIHM() dans le traitement "Fin d'initialisation" et alors FenInitialisée() sera vrai. (Appeler ExécuteMiseAJourIHM() fera en sorte que FenInitialisée() sera encore faux car la "Fin d'initialisation" ne sera pas terminée.)
Ensuite il suffit d'ajout une petite optimisation du code dans le traitement "Demande de mise à jour de l'affichage" pour ne pas rafraîchir les données inutilement:
SI FenInitialisée() = Faux ALORS RETOUR |
|
|
|
| |
| |
| |
| |
| |
| |
| | |
| |