變更顯示的畫面。

概觀

大部分的應用程式包含多個畫面。 使用 BackNavigate 函式來變更顯示的畫面。 例如,將按鈕的 OnSelect 屬性設定為包括 Navigate 函式的公式,如果您想要在使用者選取該按鈕時顯示另一個畫面。 在該公式中,您可以指定視覺轉換,例如淡化,以控制一個畫面變更為另一個畫面的方法。

BackNavigate 只會變更所顯示的畫面。 最近未顯示的畫面會繼續在幕後運作。 您可以建置參考另一個畫面上的控制項屬性之公式。 例如,使用者可以變更一個螢幕上滑桿的值、瀏覽至在公式中使用該值的另一個螢幕,並查看它如何影響新畫面中發生的動作。 然後使用者可以瀏覽回到原始的畫面,並看到滑桿保留其值。

使用者在不同的畫面之間瀏覽時,也會保留內容變數。 您可以使用 Navigate 來設定會顯示公式之畫面的一或多個內容變數,這是設定螢幕以外之內容變數的唯一方式。 您可以使用這種方法,將參數傳遞至螢幕。 如果您已使用另一個程式設計工具,則這個方法類似於將參數傳遞至程序。

說明

Back

Back 函式會顯示最近出現的畫面。 您未指定這個函式的任何引數。

Navigate

在第一個引數中,指定要顯示畫面的名稱。

在第二個引數中,指定舊的畫面如何變更為新的畫面︰

轉換引數 說明
ScreenTransition.Cover 新的畫面滑至檢視,包括目前的畫面。
ScreenTransition.Fade 舊的畫面淡化以顯示新的畫面。
ScreenTransition.None 新的畫面快速取代舊的畫面。
ScreenTransition.UnCover 舊的畫面滑出檢視,未包含新的畫面。

您可以使用 Navigate 來建立或更新新畫面的內容變數。 做為選擇性的第三個引數,傳遞包含內容變數名稱的記錄做為資料行名稱和內容變數的新值。 此記錄與您搭配 UpdateContext 函式使用的記錄相同。

設定舊畫面的 OnHidden 屬性、新畫面的 OnVisible 屬性,或設定兩者可在轉換期間進行其他變更。 將會更新 App.ActiveScreen 屬性以反映變更。

Back 通常會傳回 true,但如果使用者是在顯示的第一個畫面且沒有上一個畫面,則會傳回 falseNavigate 通常會傳回 true,但如果其中一個引數發生問題,則會傳回 false

您可以只在行為公式內使用這些函式。

語法

Back()

Navigate( Screen, Transition [, UpdateContextRecord ] )

  • Screen - 必要項目。 要顯示的畫面。
  • Transition - 必要項目。 要在目前的畫面和下一個畫面之間使用的視覺轉換。 請參閱本主題先前這個引數的有效值清單。
  • UpdateContextRecord - 選擇性。 一筆記錄,其中至少包含一個資料行的名稱和每個資料行的值。 這筆記錄會更新新螢幕的內容變數,如同傳遞給 UpdateContext 函式。

範例

公式 說明 結果
Navigate( Details, ScreenTransition.None ) 顯示詳細資料畫面而在內容變數的值中沒有轉換或變更。 隨即快速出現詳細資料畫面。
Navigate( Details, ScreenTransition.Fade ) 顯示詳細資料畫面與淡化轉換。 內容變數的任何值都不會變更。 目前畫面會淡化以顯示詳細資料畫面。
Navigate( Details, ScreenTransition.Fade, { ID: 12 } ) 顯示詳細資料畫面與淡化轉換,並將識別碼內容變數的值變更為 12 目前畫面會淡化以顯示詳細資料畫面,且該畫面上的內容變數識別碼會設定為 12
Navigate( Details, ScreenTransition.Fade, { ID: 12 , Shade: Color.Red } ) 顯示詳細資料畫面與淡化轉換。 將識別碼內容變數的值更新為 12,並將陰影內容變數的值更新為 Color.Red 目前畫面會淡化以顯示詳細資料畫面。 詳細資料畫面上的內容變數識別碼會設為 12,內容變數陰影設為 Color.Red。 如果您將詳細資料畫面上控制項的 Fill 屬性設為陰影,該控制項會顯示為紅色。

循序漸進

  1. 將預設畫面命名為 DefaultScreen、新增標籤,以及設定該標籤的 Text 屬性,則它會顯示 Default

  2. 新增螢幕,並將其命名為 AddlScreen

  3. 將標籤新增至 AddlScreen,並設定標籤的 Text屬性,則它會顯示 Addl

  4. 新增一個按鈕至 AddlScreen,並將其 OnSelect 屬性設為此函式:
    Navigate(DefaultScreen, ScreenTransition.Fade)

  5. AddlScreen 按 F5 鍵,並選取按鈕。
    隨即出現 DefaultScreen

另一個範例