1

FlashDevelop の下の AS のみのプロジェクトで、flash.display.Loader を使用してロードされた SWF の子をトラバースしています。

オブジェクトで flash.utils.getQualifiedClassName(obj) を呼び出すと「mx.core::UITextField」が返され、それが flash.text.TextField のサブクラスである場合、(obj は flash.text.TextField) を呼び出すと false が返されます。

それに関する洞察はありますか?私は何か間違ったことをしていますか?

4

2 に答える 2

0

flash.utils.getQualifiedClassName(obj) でクラス名を要求しています。UITextField クラスは、flash.text.TextField クラスを拡張します。したがって、クラスは UITextField であり、TextField ではありません。

このように考えてみてください

class TextField
{ 
}

class UITextField extends TextField
{
}

TextField を取得するには getQualifiedSuperclassName() を使用する必要があります

于 2010-02-16T16:04:07.550 に答える
0

どうやら、問題は (いつものように) IS オペレーターではなく、私自身のコードにありました。次回はもっと注意深く、投稿する前にコードを再確認します。 スパムでごめんなさい...

于 2010-02-16T20:04:48.690 に答える