addProperty()
を使用して、ゲッターでクラスを動的に設定しています。ここでは、まさにそれを行う私のコードの抜粋です:AS2:名前のあるプロパティがありません
for (var i in options)
{
this.addProperty(i, getOption, null);
this._optionCount++;
}
//a little while later....
public function getOption()
{
return "hellO";
}
これは(チエニル前のコードは、ドロップダウンと呼ばれるクラスの一部である)私は、タイムラインから次を呼び出すときので、正常に動作している:
var options:Object = new Object();
options.one = "hello";
options.two = "goodday";
options.three = "yo";
options.four= "MEGA AMAZING";
options.five= "yo yo yo";
var drop1:DropDown = new DropDown(this.drop1, "red", options)
そしてによってvar drop1
のプロパティのすべてをトレースしようとすると:私は、次の取得
for (var i in drop1)
trace(i+" = "+drop1[i]);
:
しかし_initY = -107
_mask = _level0.drop1.mask
_dropdown = _level0.drop1.options
_optionWidth = 143
_button = _level0.drop1
one = hellO
two = hellO
three = hellO
four = hellO
_optionCount = 5
five = hellO
_shadow = 8330268
_highlight = 9249057
私は、次をトレースしようとすると:
名「1」が何のプロパティがありません:
trace(drop1.one);
それは言ってくれコンパイラエラーが発生します。
なぜこのプロパティにアクセスできないのですか?
私は「ダイナミック」タイプ、歓声を知らなかった:O –