SetFocusコマンド


SetFocusコマンド

SetFocusを使用するには、APL 1.1以降が必要です。これよりも古いバージョンのAPLを実行しているデバイスには、別のエクスペリエンスを提供してください

フォーカスのあるアクション可能なコンポーネントを変更します。フォーカスを設定したり解除したりできるコンポーネントの詳細については、focusedを参照してください。

一度に1つのコンポーネントのみがフォーカスされます。1つのコンポーネントにフォーカスを設定すると、ほかのコンポーネントのフォーカスが自動的に解除されます。

SetFocusは実行時に以下を実行します。

  1. ターゲットコンポーネントにフォーカスを当て、コンポーネントのfocused状態をtrueに設定します。
  2. それまでフォーカスを当てていたすべてのコンポーネントからフォーカスを外し、そのコンポーネントのfocused状態をfalseに設定します。

ターゲットコンポーネントが無効であるか、アクションを実行できない場合、またはinheritParentStateプロパティがtrueに設定されている場合、SetFocusコマンドは無視されます。

プロパティ

SetFocusコマンドには、共通のコマンドプロパティに加えて、以下の表に示すプロパティがあります。typeプロパティはSetFocusに設定します。

コマンドを実行するために値が必要なプロパティの場合、以下の表の「デフォルト」列に「必須」と表示されています。それ以外の場合はデフォルト値が表示されますが、デフォルト値がないこともあります。

プロパティ デフォルト 説明
componentId セレクター :source フォーカスを設定するコンポーネントです。

たとえば、次のコマンドは、idmyButtonである特定のコンポーネントにフォーカスを設定します。

{
  "type": "SetFocus",
  "componentId": "myButton"
}

SetFocusコマンドは遅延なく、高速モードで実行されます。

componentId

コマンドのターゲットコンポーネントを識別するセレクターです。指定しない場合は、デフォルトで:sourceになります。:sourceセレクターは、SetFocusコマンドを発行したコンポーネントをターゲットにします。

コンポーネントにフォーカスを当てた状態でドキュメントを開くには、ドキュメントのonMountプロパティをSetFocusに設定します。

たとえば、ドキュメントのマウント時にidmyButtonであるコンポーネントにフォーカスするには、次のように記述します。

{
  "onMount": {
    "type": "SetFocus",
    "componentId": "myButton"
  }
}

SetFocusの例

次の例は、ドキュメントのonMountハンドラーでSetFocusを実行します。この例では、textStyleFocusableというスタイルを定義しています。これにより、テキストの色とフォントスタイルを変更して、フォーカスのあるコンポーネントを示しています。



このページは役に立ちましたか?

最終更新日: 2025 年 12 月 12 日