画面上のコンポーネントに対しカーソルが当たっている状態で、Tabキーを押下した際に、 次のコンポーネントにフォーカスを移動させることができます。
VBox、HBox、Canvasコンテナにコンポーネントを配置したときに、Tabキーを押下した場合の遷移をそれぞれ検証してみました。
VBoxの場合
<?xml version="1.0" encoding="utf-8"?> <mx:Application xmlns:mx="http://www.adobe.com/2006/mxml"> <mx:VBox height="100%"> <mx:TextArea text="1"/> <mx:TextArea text="2"/> <mx:TextArea text="3"/> <mx:TextArea text="4"/> <mx:TextArea text="5"/> </mx:VBox> </mx:Application>
サンプルのFlash
Vboxコンテナの場合は、上から下へ順に移動することが確認できます。
また、MXML上の配置と画面上の配置が同じためMXMLで配置した順=Tabキー押下時にフォーカスが移動する順番になるようです。
HBoxの場合
<?xml version="1.0" encoding="utf-8"?> <mx:Application xmlns:mx="http://www.adobe.com/2006/mxml"> <mx:HBox width="100%"> <mx:TextArea text="1"/> <mx:TextArea text="2"/> <mx:TextArea text="3"/> <mx:TextArea text="4"/> <mx:TextArea text="5"/> </mx:HBox> </mx:Application>
サンプルのFlash
Hboxコンテナの場合は、左から右へ順に移動することが確認できます。
また、MXML上の配置と画面上の配置が同じためMXMLで配置した順=Tabキー押下時にフォーカスが移動する順番になるようです。
Canvasの場合
<?xml version="1.0" encoding="utf-8"?> <mx:Application xmlns:mx="http://www.adobe.com/2006/mxml"> <mx:Canvas width="60" height="60"> <mx:TextArea x="0" y="0" width="20" height="20" text="1"/> <mx:TextArea x="20" y="0" width="20" height="20" text="2"/> <mx:TextArea x="40" y="0" width="20" height="20" text="3"/> <mx:TextArea x="0" y="20" width="20" height="20" text="4"/> <mx:TextArea x="20" y="20" width="20" height="20" text="5"/> <mx:TextArea x="40" y="20" width="20" height="20" text="6"/> <mx:TextArea x="0" y="40" width="20" height="20" text="7"/> <mx:TextArea x="20" y="40" width="20" height="20" text="8"/> <mx:TextArea x="40" y="40" width="20" height="20" text="9"/> </mx:Canvas> <mx:Canvas width="60" height="60"> <mx:TextArea x="40" y="40" width="20" height="20" text="1"/> <mx:TextArea x="20" y="40" width="20" height="20" text="2"/> <mx:TextArea x="0" y="40" width="20" height="20" text="3"/> <mx:TextArea x="40" y="20" width="20" height="20" text="4"/> <mx:TextArea x="20" y="20" width="20" height="20" text="5"/> <mx:TextArea x="0" y="20" width="20" height="20" text="6"/> <mx:TextArea x="40" y="0" width="20" height="20" text="7"/> <mx:TextArea x="20" y="0" width="20" height="20" text="8"/> <mx:TextArea x="0" y="0" width="20" height="20" text="9"/> </mx:Canvas> </mx:Application>
サンプルのFlash
1つ目のCanvasは、左上から右下へ移動することが確認でき、2つ目のCanvasは、右下から左上へ移動することが確認できます。
2つ目のCanvasも画面上の見た目のコンポーネント配置は1つ目のCanvasとまったく同じですが、2つ目のCanvasは、MXMLのソースコード上では逆から並べているため、Tabキー移動で左下から右上に移動しています。
上記検証から、Tabキーの移動順序は、デフォルトでは MXMLソースファイル上での記述順で決定されているようです。