私はこのような状況にあります。全部コードで作っていたのですが、ちょっと面倒なのでFlashの描画機能を使ってコンポーネントとのインターフェースを作りました。
いつものように、"AreaEdit" と呼ばれる MovieClip インスタンスのインターフェイスを持つメイン クラスを取得しました。私のカスタム クラス「EditorHTML」にはスプライトがあります。
private var dTela:Sprite;
したがって、コンストラクタは次のようになります。
public function EditorHTML(instEdit) {
this.Parags = new Array();
this.dTela = instEdit;
trace("dTela: "+this.dTela.width+" x "+this.dTela.height);
}
メインクラスで:
Escrit = new EditorHTML(AreaEdit);
したがって、トレースは期待どおりにボックスの寸法を表示します。ただし、カスタム クラスで、次のように内部のインスタンスにアクセスしようとすると:
this.dTela.cxEdit.addEventListener(Event.CHANGE, atualizar);
次のエラーが返されます: /Library/WebServer/Documents/as3/bibliotecas_externas/com/gustavopi/txt/EditorHTML.as、49 行目 1119: 静的タイプの flash.display:Sprite を使用した参照を介した未定義の可能性のあるプロパティ cxEdit へのアクセス。
テストを行ったところ、同じインスタンス「cxEdit」がメイン クラスで利用可能です。そのため、コンポーネントのインスタンスがカスタム クラスで利用できないことがわかります。これを解決するにはどうすればよいですか?