AS3Airプロジェクトでタブ対応のポップアップウィンドウを作成したい。現在、Tabキーを数回押すと、フォーカスはポップアップウィンドウ内のすべてのコンポーネントを通過し、ポップアップの背後にあるコンポーネントからボタンとTextFieldsのフォーカスを開始します。私はこの問題を2つの方法で解決しようとしましたが、どれもうまくいきませんでした。ここでは両方の方法を説明します
私がここ
からadobeのドキュメントを読んだ公式の方法は、次のように私の場合に何をすべきかを説明しています。「各モーダルウィンドウコンポーネントにはFocusManagerのインスタンスが含まれているため、そのウィンドウのコントロールは独自のタブセットになります。これにより、ユーザーがTabキーを押して他のウィンドウのコンポーネントに誤って移動するのを防ぐことができます。」しかし、まだ理解できません。 FocusManagerの使用方法。
- 以下のコードをコンストラクターに配置して、各ビューコンポーネントクラスにFocusManagerのインスタンスを作成しようとしましたが、機能しませんでした。
_focusManager = new FocusManager(this);
- 「モーダルウィンドウコンポーネント」とはどういう意味ですか?
回避策私が試したもう1つの方法は、親コンポーネントがFOCUS_INまたはFOCUS_OUTイベントをディスパッチするときに、各ボタンとTextFieldでtabEnabledプロパティを手動でtrueまたはfalseに設定することです。これは、新しいフラッシュファイルで作成した簡単な例では機能しましたが、大規模なプロジェクトでは機能せず、デバッグ方法がわかりません。ただし、これをダンプしてメソッド番号1に戻ることは非常に喜ばしいことです。
誰かが以前にこれらの問題に遭遇したことがありますか?他の方法で複数のタブサイクルを使用しましたか?私はこの問題に多くの時間を費やしてきたので、今のところどんなヒントも歓迎します。ありがとう[編集]この質問については多くの意見が寄せられていましたが、関連する回答がなかったので、編集して簡略化してみました