KeyNavigation QML Type
矢印キーによるキーナビゲーションをサポート。詳細...
Import Statement: | import QtQuick |
付属プロパティ
詳細説明
キーベースのユーザーインターフェイスでは、フォーカス可能なアイテム間を移動するために矢印キーを使用することが一般的です。KeyNavigation付属プロパティは、矢印キーまたはタブキーが押されたときにフォーカスを得る項目を指定する便利な方法を提供することによって、この動作を可能にします。
次の例では、2x2グリッドの項目に対してキーナビゲーションを提供しています:
import QtQuick Grid { width: 100; height: 100 columns: 2 Rectangle { id: topLeft width: 50; height: 50 color: focus ? "red" : "lightgray" focus: true KeyNavigation.right: topRight KeyNavigation.down: bottomLeft } Rectangle { id: topRight width: 50; height: 50 color: focus ? "red" : "lightgray" KeyNavigation.left: topLeft KeyNavigation.down: bottomRight } Rectangle { id: bottomLeft width: 50; height: 50 color: focus ? "red" : "lightgray" KeyNavigation.right: bottomRight KeyNavigation.up: topLeft } Rectangle { id: bottomRight width: 50; height: 50 color: focus ? "red" : "lightgray" KeyNavigation.left: bottomLeft KeyNavigation.up: topRight } }
focus true
矢印キーが押されると、KeyNavigationleft,right,up またはdown プロパティに設定された値によって定義された適切なアイテムにフォーカスが移動します。
KeyNavigationアタッチ・プロパティが、要求された矢印キーまたはタブ・キーのキーの押下および押下解除イベントを受信した場合、そのイベントは受け入れられ、それ以上伝搬しないことに注意してください。
デフォルトでは、KeyNavigation はアタッチされているアイテムの後にキーイベントを受け取ります。アイテムがキーイベントを受け入れると、KeyNavigation のアタッチされたプロパティはそのキーのイベントを受け取りません。priority プロパティをKeyNavigation.BeforeItem
に設定すると、アイテムの後ではなく、アイテムの前のキーナビゲーションにイベントを使用することができます。
フォーカスが切り替わっているアイテムが有効または表示されていない場合、このアイテムをスキップして次のアイテムにフォーカスを当てようとします。これは、同じKeyNavigationハンドラを持つアイテムが連続している場合に可能です。複数の項目が連続して有効または表示されていない場合は、それらの項目もスキップされる。
KeyNavigationは、このアイテムにフォーカスを戻すために、暗黙のうちに他の方向を設定します。つまり、left を他のアイテムに設定すると、right がそのアイテムの KeyNavigation に設定され、このアイテムにフォーカスが戻ります。ただし、そのアイテムの KeyNavigation に right が明示的に設定されている場合は、変更されません。つまり、上記の例では、KeyNavigation.rightやKeyNavigation.downをどのアイテムにも指定しなくても、同じ動作を実現することができます。
Keys attached propertyも参照して ください。
Attached Property ドキュメント
KeyNavigation.backtab : Item |
このプロパティは、Shift+Tabキーの組み合わせ(Backtab)が押されたときにフォーカスを割り当てる項目を保持します。
KeyNavigation.down : Item |
このプロパティは、下カーソルキーが押されたときにフォーカスを割り当てる項目を保持する。
KeyNavigation.left : Item |
このプロパティは、左カーソルキーが押されたときにフォーカスを割り当てる項目を保持する。
KeyNavigation.priority : enumeration |
このプロパティは、キーがアタッチされた項目自身のキー処理の前に処理されるか後に処理されるかを決定する。
定数 | 説明 |
---|---|
KeyNavigation.BeforeItem | キーイベントを、通常の項目のキー処理の前に処理します。イベントがキーナビゲーションのために使用される場合、それは受け入れられ、アイテムに渡されません。 |
KeyNavigation.AfterItem | (デフォルト) 通常のアイテムキー処理の後に、キーイベントを処理します。アイテムがキーイベントを受け入れると、KeyNavigation 添付のプロパティハンドラでは処理されません。 |
KeyNavigation.right : Item |
このプロパティは、右カーソルキーが押されたときにフォーカスを割り当てる項目を保持する。
KeyNavigation.tab : Item |
このプロパティは、Tab キーが押されたときにフォーカスを割り当てる項目を保持します。
KeyNavigation.up : Item |
このプロパティは、上カーソルキーが押されたときにフォーカスを割り当てる項目を保持します。
©2024 The Qt Company Ltd. 本書に含まれるドキュメントの著作権は、それぞれの所有者に帰属します。 本書で提供されるドキュメントは、Free Software Foundation が発行したGNU Free Documentation License version 1.3に基づいてライセンスされています。 Qtおよびそれぞれのロゴは、フィンランドおよびその他の国におけるThe Qt Company Ltd.の 商標です。その他すべての商標は、それぞれの所有者に帰属します。