Fonctions Back et Navigate
Permet de modifier l’écran qui s’affiche.
Résumé
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.
Retour et Naviguer modifient uniquement l’écran affiché. 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 d’autres écrans. 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 détermine la façon dont cela affecte le nouvel écran. L’utilisateur peut ensuite revenir à l’écran d’origine et confirmer que le curseur a conservé sa valeur.
Les variables de contexte sont également conservées lorsqu’un utilisateur navigue entre les écrans. 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.
Sous l’objet App, utilisez la propriété StartScreen pour contrôler le premier écran à afficher.
Utilisez l’une de ces fonctions uniquement au sein d’une formule de comportement.
Naviguer
S’applique à : Applications canevas Applications pilotées par modèle
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 | Démonstration |
---|---|---|
Transition d’écran.Couverture | Le nouvel écran apparaît par glissement, de droite à gauche, pour recouvrir l’écran actuel. | |
Transition d’écran.CoverRight | Le nouvel écran apparaît par glissement, de gauche à droite, pour recouvrir l’écran actuel. | |
Transition d’écran. Fondu | L’écran actuel disparaît dans un effet de fondu pour afficher le nouvel écran. | |
ScreenTransition.None (par défaut) | Le nouvel écran remplace rapidement l’écran actuel. | |
Transition d’écran.Découverte | L’écran actuel disparaît de la vue, de droite à gauche, pour découvrir le nouvel écran. | |
Transition d’écran.UnCoverRight | L’écran actuel disparaît de la vue, de gauche à droite, pour découvrir 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.
Naviguer renvoie normalement vrai mais renverra faux si une erreur est rencontrée.
Les variables de contexte pour la navigation sont expliquées dans l’article Naviguer entre les écrans.
Revenir
S’applique à : Applications Canvas
La fonction Back renvoie l’écran apparu en dernier.
Pour chaque appel Naviguate, l’application suit l’écran qui est apparu et la transition. Vous pouvez utiliser des appels Back successifs pour revenir complètement à l’écran qui est apparu lorsque l’utilisateur a démarré l’application.
Quand la fonction Back s’exécute, la transition inverse est utilisée par défaut. Par exemple, si un écran apparaît à travers la transition CoverRight, Back utiliser Découvrir (à gauche) pour revenir. Fade et None sont leurs propres inverses. Transmettez un argument facultatif à Back pour forcer une transition spécifique.
Back renvoie normalement true mais renvoie false si l’utilisateur n’a pas navigué vers un autre écran depuis le démarrage de l’application.
Syntaxe
Retour( [ Transition ] )
- Transition - Facultatif. Transition visuelle à utiliser entre l’écran actuel et l’écran précédent. Faites référence à la liste des valeurs valides pour cet argument telles que répertoriées précédemment dans cet article. Par défaut, la transition par laquelle un écran revient est l’inverse de la transition par laquelle il est apparu.
Naviguer( Écran [, Transition [, UpdateContextRecord ] ] )
- Écran - Obligatoire. Écran à afficher. À la place de Screen, vous pouvez également utiliser un contrôle à l’écran auquel vous souhaitez accéder.
- Transition - Facultatif. Transition visuelle à utiliser entre l’écran actuel et l’écran suivant. Affichez la liste des valeurs valides pour cet argument telles que répertoriées précédemment dans cet article. La valeur par défaut est None.
- UpdateContextRecord - Facultatif. Enregistrement contenant le nom d’au moins une colonne et une valeur pour chaque 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 |
---|---|---|
Naviguer (Détails) | Affiche l’écran Détails sans transition ni changement de valeur pour une variable de contexte. | L’écran Détails apparaît rapidement. |
Naviguer( Détails, ScreenTransition.Fade ) | Affiche l’écran Détails avec une transition Fondu. Aucune valeur de variable de contexte n’est modifiée. | L’écran actuel s’atténue pour afficher l’écran Détails. |
Naviguer( Détails, ScreenTransition.Fade, { ID : 12 } ) | Affiche l’écran Détails avec une transition Fondu et met à jour la valeur de la variable de contexte ID sur 12. | L’écran actuel s’atténue pour afficher l’écran Détails ; la variable de contexte ID à cet écran est définie sur 12. |
Naviguer( Détails, ScreenTransition.Fade, { ID : 12, Ombre : Couleur.Rouge } ) | Affiche l’écran Détails avec une transition 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 s’atténue pour afficher l’écran Détails. L’ID 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. |
Dos() | Affiche l’écran précédent avec la transition de retour par défaut. | Affiche l’écran précédent via la transition inverse de la transition par laquelle l’écran actuel est apparu. |
Retour( ScreenTransition.Cover ) | Affiche l’écran précédent avec la transition Cover par défaut. | Affiche l’écran précédent via la transition Cover de la transition, quelle que soit la transition par laquelle l’écran actuel est apparu. |
Pas à pas
Créer une application vide.
Ajoutez-y un deuxième écran.
L’application contient deux écrans vierges : Screen1 et Screen2.
Définissez la propriété Fill de Screen2 sur la valeur
Gray
.Sur Screen2, ajoutez une bouton et définissez sa propriété OnSelect sur cette formule :
Navigate( Screen1, ScreenTransition.Cover )
Cliquez sur le bouton tout en maintenant la touche Alt enfoncée.
L’écran 1 apparaît avec un fond blanc à travers une transition qui se couvre vers la gauche.
Sur Screen1, ajoutez une bouton et définissez sa propriété OnSelect sur cette formule :
Back()
Cliquez sur le bouton tout en maintenant la touche Alt enfoncée.
Le deuxième écran apparaît avec un fond gris à travers une transition qui se découvre vers la droite (l’inverse de Cover).
Cliquez sur le bouton de chaque écran à plusieurs reprises pour rebondir d’avant en arrière.