0

如何在下面的代码中让 var sliderthumb 替换 [sliderthumb]?谢谢你的帮助。

var sliderthumb:String = "foo";

function natureThumb(){

Sprite(naturepage.sliders.[sliderthumb].getChildAt(1)).height = Sprite(naturepage.sliders.[sliderthumb].getChildAt(1)).width = 65;

}
4

3 回答 3

1

只需删除点。

Sprite(naturepage.sliders[sliderthumb].getChildAt(1)).height
于 2012-12-05T18:26:12.350 回答
1

有一种方法call允许通过其名称访问子显示对象displayObjectContainergetChildByName希望这可以帮助!

var sliderthumb:String = "foo";

function natureThumb(){

Sprite(naturepage.sliders.getChildByName(sliderthumb).getChildAt(1)).height = Sprite(naturepage.sliders.getChildByName(sliderthumb).getChildAt(1)).width = 65;

}
于 2012-12-05T18:27:49.950 回答
0

好吧,提供的两个答案都可能是正确的,具体取决于 OP 的设置方式,但想添加一些说明。首先,我将代码修改为:

var sliderthumb:String = "foo";

function natureThumb(){
    var sp:Sprite = naturepage.sliders.[sliderthumb].getChildAt(1) as Sprite;
    sp.height = sp.width = 65;
}

如果您像这样设置对象

var mySprite:Sprite = new Sprite();
mySprite.id = "foo";

那么这将起作用(假设您想要对象 foo 的第二个子对象,它是滑块的子对象)

function natureThumb(){
    var sp:Sprite = naturepage.sliders[sliderthumb].getChildAt(1) as Sprite;
    sp.height = sp.width = 65;
}

如果你改为设置你的对象

var mySprite:Sprite = new Sprite();
mySprite.name = "foo";

那么这将起作用

function natureThumb(){
    var sp:Sprite = naturepage.sliders.getChildByName(sliderthumb).getChildAt(1) as Sprite;
    sp.height = sp.width = 65;
}
于 2012-12-05T20:27:03.230 回答