Permet de modifier l’écran qui s’affiche.

Vue d’ensemble

La plupart des applications contiennent plusieurs écrans. Utilisez les fonctions Back et Navigate pour modifier l’écran qui s’affiche. Par exemple, définissez la propriété OnSelect d’un bouton sur une formule qui inclut une fonction Navigate si vous souhaitez afficher un écran différent lorsqu’un utilisateur appuie sur ce bouton. Dans cette formule, vous pouvez indiquer une transition visuelle (par exemple un effet de fondu pour contrôler le passage d’un écran à un autre.

Back et Navigate modifient uniquement l’écran qui s’affiche. Les écrans qui ne s’affichent pas continuent de fonctionner à l’arrière-plan. Vous pouvez créer des formules qui font référence aux propriétés des contrôles sur un autre écran. Par exemple, un utilisateur modifie la valeur d’un curseur sur un écran, accède à un autre écran qui utilise cette valeur dans une formule, puis visualise la façon dont cela affecte le nouvel écran. L’utilisateur peut ensuite revenir à l’écran d’origine et constater que le curseur a conservé sa valeur.

Les variables de contexte sont également préservées lorsqu’un utilisateur navigue d’un écran à l’autre. Vous pouvez utiliser Navigate afin de définir une ou plusieurs variables de contexte pour l’écran que la formule va afficher. Il s’agit là du seul moyen de définir une variable de contexte depuis l’extérieur de l’écran. Utilisez cette approche pour transmettre des paramètres à un écran. Si vous avez utilisé un autre outil de programmation, cette approche est similaire à celle consistant à transmettre des paramètres à des procédures.

Description

Back

La fonction Back affiche l’écran apparu en dernier. Vous ne spécifiez aucun argument pour cette fonction.

Navigate

Dans le premier argument, indiquez le nom de l’écran à afficher.

Dans le deuxième argument, indiquez comment effectuer la transition de l’ancien écran au nouvel écran :

Argument de transition Description
ScreenTransition.Cover Le nouvel écran apparaît, recouvrant l’écran actuel.
ScreenTransition.Fade L’ancien écran disparaît dans un effet de fondu pour afficher le nouvel écran.
ScreenTransition.None L’ancien écran est rapidement remplacé par le nouvel écran.
ScreenTransition.UnCover L’ancien écran disparaît, révélant le nouvel écran.

Vous pouvez utiliser Navigate pour créer ou mettre à jour les variables de contexte du nouvel écran. Comme troisième argument facultatif, transférez un enregistrement contenant le nom de la variable de contexte en tant que nom de colonne et la nouvelle valeur de la variable de contexte. Cet enregistrement est le même que celui que vous utilisez avec la fonction UpdateContext.

Définissez la propriété OnHidden de l’ancien écran et la propriété OnVisible du nouvel écran, ou les deux pour apporter des modifications supplémentaires pendant la transition. La propriété App.ActiveScreen est mise à jour pour refléter ces modifications.

Back renvoie normalement true, mais peut renvoyer false si l’utilisateur se trouve sur le premier écran présenté et qu’il n’existe aucun écran précédent. Navigate renvoie normalement true, mais peut renvoyer false en cas de problème avec l’un de ses arguments.

Utilisez ces fonctions uniquement au sein d’une formule de comportement.

Syntaxe

Back()

Navigate( Screen, Transition [, UpdateContextRecord ] )

  • *Screen* : requis. Écran à afficher.
  • *Transition* : requis. Transition visuelle à utiliser entre l’écran actuel et l’écran suivant. Consultez la liste des valeurs valides pour cet argument telles que répertoriées précédemment dans cette rubrique.
  • *UpdateContextRecord* : facultatif. Enregistrement contenant le nom d’au moins une colonne et une valeur pour cette colonne. Cet enregistrement met à jour les variables de contexte du nouvel écran comme si elles étaient transmises à la fonction UpdateContext.

Exemples

Formule Description Résultat
Navigate( Details, ScreenTransition.None ) Affiche l’écran Details sans transition ni changement de valeur d’une variable de contexte. L’écran Details apparaît rapidement.
Navigate( Details, ScreenTransition.Fade ) Affiche l’écran Details avec une transition de type fondu. Aucune valeur de variable de contexte n’est modifiée. L’écran actuel disparaît dans un effet de fondu pour révéler l’écran Details.
Navigate( Details, ScreenTransition.Fade, { ID: 12 } ) Affiche l’écran Details avec une transition de type fondu, puis met à jour l’identifiant de la variable de contexte en lui donnant pour valeur 12. L’écran actuel disparaît dans un effet de fondu pour révéler l’écran Details, et l’identifiant de la variable de contexte de cet écran est défini sur 12.
Navigate( Details, ScreenTransition.Fade, { ID: 12 , Shade: Color.Red } ) Affiche l’écran Details avec une transition de type fondu. Met à jour la valeur de l’identifiant de la variable de contexte en lui donnant pour valeur 12, puis met à jour la valeur de la variable de contexte Shade en lui donnant pour valeur Color.Red. L’écran actuel disparaît dans un effet de fondu pour révéler l’écran Details. L’identifiant de la variable de contexte de l’écran Details est défini sur 12, et la variable de contexte Shade est définie sur Color.Red. Si vous définissez la propriété Fill d’un contrôle de l’écran Details sur Shade, ce contrôle s’affiche en rouge.

Étape par étape

  1. Nommez l’écran par défaut DefaultScreen, ajoutez-lui une étiquette, puis définissez la propriété Text de cette étiquette pour qu’elle affiche Default.

  2. Ajoutez un écran, puis appelez-le AddlScreen.

  3. Ajoutez une étiquette à AddlScreen, puis définissez la propriété Text de cette étiquette pour qu’elle affiche Addl.

  4. Ajoutez un bouton à AddlScreen, puis définissez sa propriété OnSelect sur cette fonction :
    Navigate(DefaultScreen, ScreenTransition.Fade)

  5. À partir de AddlScreen, appuyez sur F5, puis cliquez sur le bouton.
    DefaultScreen apparaît.

Autre exemple