Bendrinti naudojant


Grįžimo ir naršymo funkcijos

Keičia, kuris ekranas rodomas.

Apžvalga

Daugumoje programų yra keli ekranai. Naudodami funkcijas Back ir Navigate, galite keisti, kuris ekranas rodomas. Pavyzdžiui, mygtuko ypatybę OnSelect nustatykite kaip formulę, kurioje yra funkcija Navigate, jei norite rodyti kitą ekraną, kai vartotojas pasirenka tą mygtuką. Šioje formulėje galite nurodyti vaizdinį perėjimą, pvz., Fade, ir valdyti, kaip vienas ekranas keičiasi į kitą.

Back ir Navigate keičia tik tai, kuris ekranas rodomas. Ekranai, kurie tuo metu nerodomi, toliau veikia fone. Galite kurti formules, nurodančias į kitų ekranų valdiklių ypatybes. Pavyzdžiui, vartotojas gali pakeisti slankiklio reikšmę viename ekrane, pereiti į kitą ekraną, kuriame ta reikšmė naudojama formulėje, ir nustatyti, kokią įtaką ji turi tam, kas vyksta naujame ekrane. Tada vartotojas gali grįžti į pradinį ekraną ir patvirtinti, kad slankiklio reikšmė išliko.

Vartotojui pereinant tarp ekranų, konteksto kintamieji taip pat išsaugomi. Naudodami Navigate, galite nustatyti vieną ar kelis ekrano konteksto kintamuosius, kuriuos rodys formulė – tai yra vienintelis būdas nustatyti konteksto kintamąjį ne ekrane. Naudodami šį metodą, galite parametrus perduoti į ekraną. Jei esate naudoję kitą programavimo įrankį, šis metodas yra panašus į parametrų perdavimą procedūroms.

Naudokite programos objekto StartScreen ypatybę ir valdykite pirmąjį rodomą ekraną.

Bet kurią funkciją galite naudoti tik veikimo formulėje.

Taikoma: drobės programoms Modeliu pagrįstoms programoms

Pirmajame argumente nurodykite rodytino ekrano pavadinimą.

Antrajame argumente nurodykite, kaip senasis ekranas pasikeičia į naują ekraną:

Perėjimo argumentas Aprašas Demonstracija
ScreenTransition.Cover Naujas ekranas įslenka į vaizdą iš dešinės į kairę ir uždengia dabartinį ekraną. ekrano perėjimo uždengimo animacija.
ScreenTransition.CoverRight Naujas ekranas įslenka į vaizdą iš kairės į dešinę ir uždengia dabartinį ekraną. ekrano perėjimo uždengimo į dešinę animacija.
ScreenTransition.Fade Dabartinis ekranas išnyksta ir atidengia naują ekraną. ekrano perėjimo išnykimo animacija.
ScreenTransition.None (numatytasis) Naujas ekranas greitai pakeičia dabartinį ekraną. ekrano perėjimo nebuvimo animacija.
ScreenTransition.UnCover Dabartinis ekranas išslenka iš vaizdo iš dešinės į kairę ir atidengia naują ekraną. ekrano perėjimo atidengimo animacija.
ScreenTransition.UnCoverRight Dabartinis ekranas išslenka iš vaizdo iš kairės į dešinę ir atidengia naują ekraną. ekrano perėjimo atidengimo į dešinę animacija.

Naudodami Navigate, galite sukurti arba atnaujinti naujo ekrano konteksto kintamuosius. Kaip pasirenkamąjį trečiąjį argumentą perduokite įrašą, kuriame kaip stulpelio pavadinimas yra konteksto kintamojo pavadinimas ir naujoji konteksto kintamojo reikšmė. Šis įrašas yra tas pats, kurį naudojate su funkcija UpdateContext.

Norėdami atlikti papildomų pakeitimų perėjimo metu, nustatykite senojo ekrano ypatybę OnHidden, naujojo ekrano ypatybę OnVisible arba jas abi. Bus atnaujinta ypatybė App.ActiveScreen, kad matytųsi pakeitimas.

Navigate įprastai pateikia true, tačiau, jei įvyks klaida, pateiks false.

Naršymo konteksto kintamieji paaiškinti straipsnyje ekranų naršymas.

Atgal

Taikoma: drobės programoms

Funkcija Back grąžina į vėliausiai rodytą ekraną.

Kai kaskart iškviečiama Navigate, programa seką pasirodžiusį ekraną ir perėjimą. Vieną po kitos naudodami kelias Back iškvietas, galite grįžti į ekraną, kuris buvo rodomas vartotojui paleidus programą.

Kai vykdoma funkcija Back, pagal numatytuosius parametrus naudojamas atvirkštinis perėjimas. Pavyzdžiui, jei ekranas pasirodė per perėjimą CoverRight, Back grįžta naudodama UnCover (kuris slenka į kairę). Fade ir None yra atvirkštiniai vienas kitam. Norėdami priverstinai naudoti konkretų perėjimą, funkcijai Back perduokite pasirenkamąjį argumentą.

Back įprastai pateikia true, tačiau, jei paleidęs programą, vartotojas neperėjo į kitą ekraną, pateikia false.

Sintaksė

Back( [ Transition ] )

  • Transition – nebūtina. Vaizdinis perėjimas, naudotinas tarp dabartinio ir ankstesnio ekranų. Žr. pirmiau šiame straipsnyje esantį tinkamų šio argumento reikšmių sąrašą. Numatyta, kad perėjimas, per kurį ekranas grįžta, yra atvirkštinis perėjimui, per kurį jis pasirodė.

Navigate( Screen [, Transition [, UpdateContextRecord ] ] )

  • Screen – būtina. Rodytinas ekranas. Vietoj ekrano taip pat galite naudoti valdiklį, esantį ekrane, į kurį norite pereiti.
  • Transition – nebūtina. Vaizdinis perėjimas, naudotinas tarp dabartinio ir kito ekranų. Žr. pirmiau šiame straipsnyje esantį tinkamų šio argumento reikšmių sąrašą. Numatytoji reikšmė yra None.
  • UpdateContextRecord – nebūtina. Įrašas, kuriame yra bent vieno stulpelio pavadinimas ir kiekvieno stulpelio reikšmė. Šis įrašas atnaujina naujojo ekrano konteksto kintamuosius taip, tarsi jie būtų perduoti funkcijai UpdateContext.

Pavyzdžiai

Formulė Aprašas Rezultatas
Navigate( Details ) Rodomas ekranas Details be perėjimo ir nekeičiant konteksto kintamojo reikšmės. Greitai pasirodo ekranas Details.
Navigate( Details, ScreenTransition.Fade ) Rodomas ekranas Details su perėjimu Fade. Nekeičiama jokia konteksto kintamojo reikšmė. Dabartinis ekranas išnyksta, kad būtų rodomas ekranas Details.
Navigate( Details, ScreenTransition.Fade, { ID: 12 } ) Rodomas ekranas Details su perėjimu Fade ir konteksto kintamojo ID reikšmė atnaujinama į 12. Dabartinis ekranas išnyksta, kad būtų rodomas ekranas Details, o tame ekrane konteksto kintamasis ID nustatomas kaip 12.
Navigate( Details, ScreenTransition.Fade, { ID: 12 , Shade: Color.Red } ) Rodomas ekranas Details su perėjimu Fade. Konteksto kintamojo ID reikšmę atnaujina į 12, o kontkesto kintamojo Shade – į Color.Red. Dabartinis ekranas išnyksta, kad būtų rodomas ekranas Details. Konteksto kintamasis ID ekrane Details nustatomas kaip 12, o konteksto kintamasis Shade nustatomas kaip Color.Red. Jei ekrane Details valdiklio ypatybę Fill nustatytumėte kaip Shade, tas valdiklis būtų rodomas raudonai.
Back() Rodomas ankstesnis ekranas su numatytuoju grįžtamuoju perėjimu. Rodomas ankstesnis ekranas per atvirkštinį perėjimą tam perėjimui, per kurį ekranas pasirodė.
Back( ScreenTransition.Cover ) Rodomas ankstesnis ekranas su perėjimu Cover. Rodomas ankstesnis ekranas per perėjimą Cover, neatsižvelgiant į perėjimą, per kurį pasirodė dabartinis ekranas.

Nuoseklūs veiksmai

  1. Sukurkite tuščią programą.

  2. Į ją įtraukite antrą ekraną.

    Programoje yra du tušti ekranai: Screen1 ir Screen2.

  3. Screen2 ypatybę Fill nustatykite kaip reikšmę Gray.

  4. Ekrane Screen2 įtraukite mygtuką ir jo ypatybę OnSelect nustatykite kaip šią formulę:

    Navigate( Screen1, ScreenTransition.Cover )
    
  5. Laikydami nuspaudę klavišą Alt, pasirinkite mygtuką.

    Screen1 pasirodo su baltu fonu per perėjimą, kuris užsidengia į kairę.

  6. Ekrane Screen1 įtraukite mygtuką ir jo ypatybę OnSelect nustatykite kaip šią formulę:

    Back()
    
  7. Laikydami nuspaudę klavišą Alt, pasirinkite mygtuką.

    Antrasis ekranas pasirodo su pilku fonu per perėjimą, kuris atsidengia į dešinę (atvirkštinis perėjimui Cover).

  8. Norėdami šokinėti tarp ekranų, pakartotinai pasirinkite kiekvieno ekrano mygtuką.

Taip pat žr.

Konteksto kintamųjų naudojimas