CallOptions は、特定の Panel オブジェクトの呼び出しにおいて、トランジション、動作、および位置を実行時に指定するために使用されます。
呼び出したパネルを、呼び出し元がある場所ではなく、別のフレームに表示したい場合があります。これを行うには、Target オプションを使用します。
これが可能なのは、[ Navigation Style ] が Split または Slide に設定されている場合や、ダッシュボードでコントロールが Tab に設定されている場合です。
パネルの外観を抽象的に表します:
Slide/Split |
|
Tab |
|
注: Slide と Split の違いは、
「Left」領域が固定されているかどうかです。 |
|
|
|
|
この場合、ターゲット (領域) は、CallOptions の [ Target ] プロパティに指定した名前を使用して示されます。
構文は次のとおりです:
<オブジェクト名>.CallOptions.Target = TargetName
<オブジェクト名>()
[ Target ] プロパティがサポートする値のドメインは、前述のとおり、UI 上のコンポーネントの名前のリストと、ナビゲーションスタイル領域の名前で示されます。これらの値は 2 つの方法で定義できます:
- 角かっこによる表記: " [ "" と " ] " を使用する一般的な方法です。
- ターゲットインデックスを使用: 各インデックスが、特定のターゲットを参照します (例: Target [ i ] は i 番目のターゲットです)。
- ナビゲーションインデックスを使用: 各インデックスは、特定のナビゲーションターゲットを参照します (例: <N> [ i ] は、ナビゲーション N の i 番目のターゲットです)。
- エイリアス: 関連するナビゲーション値です (例: スライドナビゲーションの Left、Right、Detail、Content、Center)。
そのため、上記の値は次の表に示すように同義になります。
同義の値 |
説明 |
ナビゲーション |
ターゲット |
エイリアス |
Slide [ 1 ] |
Target [ 1 ] |
Left |
左側のセクションに表示されます。 |
Slide [ 2 ] |
Target [ 2 ] |
Center、Content、Detail |
中央のセクションに表示されます。 |
Tab [ 1 ] |
Target [ 1 ] |
N/A |
最初のタブを表示します。 |
... |
... |
... |
... |
Tab [ K ] (1) |
Target [ K ] |
N/A |
K 番目のタブを表示します。 |
Split [ 1 ] |
Target [ 1 ] |
Left |
左側に表示されます。 |
Split [ 2 ] |
Target [ 2 ] |
Center、Content、Detail |
中央に表示されます。 |
すべて |
N/A |
Blank |
(「全画面のポップアップ」のように) 独立したパネルとして表示されます (2)。 |
注:
(1) K はタブの数を表します。
(2) 通常、これらのパネルはアプリケーションの「コンテンツ」には含まれません (例: [ 設定 ] 、 [ バージョン情報 ] 、 [ ヘルプ ] 、 [ ログイン ] )。
Left
|
Content
|
Right
|
Bottom |
- スライドナビゲーションが有効な場合は、「Right」セクションも使用できます。
- iOS デバイスの場合、使用されるナビゲーションスタイルとは無関係に、「Bottom」領域を使用できます。
唯一の要件としては、後述のとおり、明示的なプログラミングによってのみこれらのセクションを表示できます。
開発者は、Navigation 外部オブジェクトを使用して、ドロワーにコンテンツを動的に表示 (または非表示) できます。
たとえば、アプリケーションが [ Navigation Style ] = [ Slide ] を使用し、中央のパネルに次のようなユーザーイベントが定義されている場合は、右のドロワーにパネルをロードするだけでなく、右のドロワーも表示されます。
Event 'ShowRight'
Composite
SomePanel.CallOptions.Target = "Right" //表示するドロワーに設定する
SomePanel() //そのターゲットにパネルをロードする
Navigation.ShowTarget("Right") //ターゲットを表示する
EndComposite
EndEvent
アプリのメインオブジェクトが認証を使用し ( [ Integrated Security ] プロパティが「Authentication」に設定されている)、アプリがスライドナビゲーションを使用する場合、Slide セクションに表示される、呼び出された各オブジェクト (既定の動作) も認証が必要です。したがって、Integrated Security なしのオブジェクトを呼び出す場合には、Login Object が代わりに表示されます。
そのため、(統合認証のない) Login パネルから Register オブジェクトを呼び出す必要がある場合、独立したパネルで表示するために、Target = "Blank" で呼び出す必要があります。これは、手動で Login パネルを呼び出す必要がある場合にも適用されます。
ナレッジベース: EventDay
|