2

AS3 とキーボード フォーカスに問題があります。現在キーボード フォーカスを持っているオブジェクトの名前を画面に出力するために使用できる変数または関数があるかどうか疑問に思っています。

4

2 に答える 2

4

これは、FocusManager を介して行います。次に、getFocus 関数を呼び出すだけです。現在のフォーカスを毎秒表示する簡単な例をまとめました。このままでは本当に意味がありませんが、それがどのように機能するかを示しています。

import fl.managers.FocusManager;
var focus:FocusManager = new FocusManager(this);

function traceFocus():void
{
    trace(focus.getFocus())
}


setInterval(traceFocus,1000);

このコードをルートに配置し、ステージ上のいくつかの入力ボックスを配置するだけで機能するはずです。また、ドキュメントをチェックしてください

于 2009-04-27T08:12:13.940 に答える
1

これも同様に機能します:

if (stage.focus) { trace (stage.focus.name); }

TextInput コンポーネントを使用していて、ユーザーがクリックしたときにその名前が期待される場合、実際には TextInput の子 TextField のインスタンス名 ( instance88のような任意の名前を持つ) を取得することに注意してください。 stage.focus.parent.nameを使用して、TextInput 自体の正しいインスタンス名を取得します。

于 2012-02-20T17:39:25.720 に答える