4D v16.3

Mémorisation automatique des fenêtres et des valeurs

Accueil

 
4D v16.3
Mémorisation automatique des fenêtres et des valeurs

Mémorisation automatique des fenêtres et des valeurs  


 

 

4D inclut des automatismes de mémorisation de l’apparence précise des fenêtres au moment de leur fermeture (leur "géométrie"), permettant aux utilisateurs de retrouver leur environnement de travail dans l’état où ils l’ont quitté. 

Ces automatismes concernent les coordonnées des fenêtres, la position des différents objets qu’elles contiennent, ainsi que l’état courant de certains objets tels que les Onglets.

Note : Les automatismes de mémorisation sont activés uniquement si les formulaires sont rouverts avec la même taille que celle qu’ils avaient moment de leur fermeture. Par conséquent, ils s’appuient principalement sur l’emploi de la commande Open form window avec le paramètre *.

Pour activer le mécanisme de mémorisation automatique, vous devez cocher l'option Mémoriser géométrie, disponible dans les Propriétés des formulaires

Lorsque cette option est cochée, plusieurs paramètres du formulaire seront automatiquement mémorisés par 4D au moment de la fermeture de la fenêtre, quelle que soit la manière dont ils ont été modifiés au cours de la session :

  • la page courante,
  • la position, la taille et la visibilité de chaque objet du formulaire (y compris la taille et la visibilité des colonnes de list box).

Note : Cette option ne prend pas en compte les objets générés via la commande OBJECT DUPLICATE. Pour que l’utilisateur retrouve son environnement lors de l’utilisation de cette commande, le développeur doit répéter la séquence de création, définition et positionnement des objets. 

Lorsque cette option est cochée, l’option Mémoriser valeur est en outre disponible pour certains objets (cf. ci-dessous).

L'option Mémoriser valeur est disponible dans la zone "Objets" de la Liste des propriétés :

Cette option est disponible si :

  • l’Option de formulaire Mémoriser géométrie est cochée pour le formulaire,
  • l’objet sélectionné participe à la géométrie globale du formulaire. Par exemple, cette option est disponible pour les cases à cocher car leur valeur peut être utilisée pour masquer ou afficher des zones supplémentaires dans la fenêtre (cf. exemples ci-dessous).

Voici la liste des objets dont la "valeur" peut être mémorisée :

ObjetValeur mémorisée
Bouton radioValeur de la variable associée (0, 1, Faux ou Vrai en fonction du type de bouton)
Bouton radio 3DValeur de la variable associée (0, 1)
Case à cocherValeur de la variable associée (0, 1, 2)
Case à cocher 3DValeur de la variable associée (0, 1)
OngletsNuméro d’onglet sélectionné
Pop up menu/Liste déroulanteNuméro de ligne sélectionnée
Pop up menu ImageNuméro de ligne sélectionnée

4D conserve les coordonnées des fenêtres au moment de leur fermeture ainsi que leur état maximisé sous Windows lorsqu’elles ont été générées via l’instruction Creer fenetre formulaire (nomForm; *).

Ces informations, ainsi que celles mémorisées optionnellement (géométrie et valeurs) sont sauvegardées au format json dans le dossier de l’utilisateur courant de la machine, au moment de la fermeture de la fenêtre. Grâce à ce principe, même si le compte "Utilisateur par défaut" est utilisé, chaque utilisateur se connectant avec sa machine peut conserver son propre environnement. 

Ces informations ne sont ensuite utilisées que si le formulaire est rouvert avec les mêmes dimensions que lors de sa fermeture. Ce principe implique soit que l’instruction Open form window (*) a été utilisée, soit que le développeur a mis en place un système personnalisé de stockage des coordonnées. 

Les informations mémorisées sont restaurées et réappliquées dans l’ordre suivant :

  • la taille et la position de la fenêtre sont restaurées à l’exécution de la commande Open form window
  • les valeurs des variables sont restaurées au chargement du formulaire avant l’appel de l’événement On Load
  • la page courante est restaurée avant l’appel de l’événement On Load
  • les position, taille et visibilité de chaque objet sont restaurées juste après l’événement On Load.

Les propriétés des objets de sous-formulaires sont sauvegardées et réappliquées automatiquement de la même manière. 

Attention : Les informations stockées via les options "Mémoriser géométrie" et "Mémoriser valeur" sont réinitialisées dès lors qu’une modification a été apportée aux objets du formulaire en mode Développement (redimension, déplacement, ajout, suppression ou renommage). Par conséquent, il est fortement déconseillé d’utiliser cette fonctionnalité d’interface pour stocker des valeurs pérennes telles que des préférences utilisateur.

Vous souhaitez que les positions relatives des séparateurs du formulaire soient mémorisées. Il suffit dans ce cas de cocher l’option Mémoriser géométrie. A l’ouverture, le formulaire a l’apparence suivante :

L’utilisateur redimensionne la fenêtre, déplace les séparateurs. Les objets sont redimensionnés suivant leurs propres propriétés. Puis l’utilisateur referme la fenêtre. A la réouverture, les objets conservent leur nouvelle apparence :

Dans un formulaire, vous avez placé une ou plusieurs zones escamotables gérées via des cases à cocher 3D. Chaque case à cocher affiche un triangle pointant vers la droite lorsque la zone est contractée et vers le bas lorsqu’elle est déployée. Ces zones peuvent être implémentées de plusieurs manières (déplacement ou visibilité des objets, utilisation de différentes pages de formulaire...), et dans tous les cas la taille de la fenêtre peut varier.

Pour que l’état des zones escamotables soit conservé entre deux sessions, vous devez :

  • cocher l’option Mémoriser géométrie pour le formulaire afin que page courante, positions et statuts de visibilité des objets soient conservés,
  • cocher l’option Mémoriser valeur pour l’objet case à cocher 3D afin que la valeur de sa variable associée soit conservée (0 ou 1 pour l’état contracté ou déployé).

Dans un formulaire, vous avez placé des onglets avec l’action automatique "Aller à page" :

Dans ce cas, pour que le mécanisme de mémorisation fonctionne correctement, vous devez cocher l’option Mémoriser géométrie pour le formulaire et Mémoriser valeur pour l’objet onglet :

 
PROPRIÉTÉS 

Produit : 4D
Thème : Propriétés des objets actifs

 
HISTORIQUE 

 
UTILISATION DE L'ARTICLE

4D - Mode Développement ( 4D v16)
4D - Mode Développement ( 4D v16.1)
4D - Mode Développement ( 4D v16.3)