ビューに複数のコンテナーがあります。ページがロードされた瞬間にデフォルトのボタンを設定しようとしているので、Enterキーを押すと、キーダウンイベントを処理する関数が呼び出されます。preinit() 関数でデフォルト ボタンを設定しただけでは機能しません。
これどうやってするの ?
ビューに複数のコンテナーがあります。ページがロードされた瞬間にデフォルトのボタンを設定しようとしているので、Enterキーを押すと、キーダウンイベントを処理する関数が呼び出されます。preinit() 関数でデフォルト ボタンを設定しただけでは機能しません。
これどうやってするの ?
私があなたの質問を正しく理解していると仮定すると、これを機能させるには2つのことを行う必要があります。
@Flextrasが言ったように、preinitもこれに最適な選択ではないかもしれません。
コンテナーがMXMLで宣言されている場合は、MXML宣言でdefaultButtonプロパティを設定し、creationCompleteにフォーカスを設定することをお勧めします。
「動かない」のをデバッグするのは大変です。ただし、この場合、「Null 値」スタイルのエラーが発生すると思われます。
preinitialize イベントは createChildren() の前に発生するため、「デフォルト」にしたいボタンがまだ存在しない可能性があります。Flex コンポーネントのライフサイクルに関する詳細情報。
コードを初期化イベントに移動できます。
「デフォルトを設定する」ということは、FocusManagerを使用してボタンにフォーカスを与えることを意味していると思いますか?