ライブラリ アイテムがあります。内部MovieClip
に 1 つのコンポーネントがあります。ComboBox
アイテムにはクラスが割り当てられていmyMC
ます。
私が達成したいのは、メインムービーからの呼び出しが次のようvar mmc:myMC = new myMC( stage);
になることです:
ComboBox
インスタンスの値を初期化します。- myMC インスタンスをステージ上 (または別の MC 内) に配置します。
したがって、myMC コンストラクター内で次のように書きました。
public function myMc( theStage:flash.display.Stage) {
if( stage == null) this.addEventListener( Event.ADDED_TO_STAGE, init);
theStage.addChild( this);
}
public function init( e:Event = null) {
var Data:Array= new Array(
{'label1' : 'item1'},
{'label2' : 'item2'},
{'label3' : 'item3'}
);
cbox.dataProvider = new DataProvider( Data);
}
cbox
myMC 内の ComboBox インスタンスの名前です。
何が起こるかというと、ComboBox に値が割り当てられていないということです。これは私の問題の単純化された例ですが、実際のケースにはより多くの UI コンポーネントが含まれており、すべてのコンポーネントで値が失われています。
デバッガーは正しいタイプのコンポーネント オブジェクトを値とともに表示しますが、表示されているステージ オブジェクトからは外れています。
説明してください、私は何を間違っているのですか - ステージ上のインスタンスが AS インスタンス化されたオブジェクトと異なるのはなぜですか?