Actionscript 3 访问as3中的特定对象
我正在制作双色选择器盒。通过这个双色选择器框,我正在更改特定电影剪辑的颜色。我使用以下代码:Actionscript 3 访问as3中的特定对象,actionscript-3,flash,action,Actionscript 3,Flash,Action,我正在制作双色选择器盒。通过这个双色选择器框,我正在更改特定电影剪辑的颜色。我使用以下代码: for (var i:int = 0; i < 1; i++) { color_picker(i) } var colorBox:ColorPicker; var mc:MovieClip= new MovieClip() addChild(mc) function color_picker(p) { colorBox = new ColorPicker(); mc.
for (var i:int = 0; i < 1; i++)
{
color_picker(i)
}
var colorBox:ColorPicker;
var mc:MovieClip= new MovieClip()
addChild(mc)
function color_picker(p)
{
colorBox = new ColorPicker();
mc.addChild(colorBox);
colorBox.x = 0
colorBox.y = p * 40;
p++;
colorBox.addEventListener(ColorPickerEvent.CHANGE, changeColor1)
}
var colorTransform1:ColorTransform = new ColorTransform();
function changeColor1(Event:ColorPickerEvent)
{
var color = "0x" +Event.currentTarget.selectedColor.toString(16);
colorTransform.color = color;
cards.getChildAt(0).transform.colorTransform = colorTransform;
}
for(变量i:int=0;i<1;i++)
{
颜色选择器(i)
}
var-colorBox:颜色选择器;
var mc:MovieClip=新的MovieClip()
addChild(mc)
功能颜色选择器(p)
{
colorBox=新的ColorPicker();
mc.addChild(彩色盒);
colorBox.x=0
色盒y=p*40;
p++;
colorBox.addEventListener(ColorPickerEvent.CHANGE,changeColor1)
}
var colorTransform1:ColorTransform=new ColorTransform();
函数changeColor1(事件:ColorPickerEvent)
{
var color=“0x”+Event.currentTarget.selectedColor.toString(16);
colorTransform.color=颜色;
cards.getChildAt(0).transform.colorTransform=colorTransform;
}
通过这个,我只能访问最后一个颜色选择器框。
请指导我,因为当你说
colorBox = new ColorPicker();
您可以创建一个数组,并将所有的颜色选择器存储在那里(或者作为一个不太好但更简单的解决方案,尝试定义colorBox1和colorBox2)
var mc:MovieClip=new MovieClip()
addChild(mc)
对于(变量i:int=0;i<1;i++)
{
颜色选择器(i)
}
功能颜色选择器(p)
{
var colorBox=新的颜色选择器();
mc.addChild(彩色盒);
colorBox.x=0
色盒y=p*40;
//p++;//不需要增加这个值,它是从循环中得到的
colorBox.addEventListener(ColorPickerEvent.CHANGE,changeColor1)
}
var colorTransform1:ColorTransform=new ColorTransform();
函数changeColor1(事件:ColorPickerEvent)
{
var color=“0x”+Event.currentTarget.selectedColor.toString(16);
colorTransform.color=颜色;
cards.getChildAt(0).transform.colorTransform=colorTransform;
}
function color_picker(p) {
array.push(new ColorPicker())
colorBox = array[array.length-1]
mc.addChild(colorBox);
colorBox.x = 0
colorBox.y = p * 40;
p++;
colorBox.addEventListener(ColorPickerEvent.CHANGE, changeColor1)
}
var mc:MovieClip= new MovieClip()
addChild(mc)
for (var i:int = 0; i < 1; i++)
{
color_picker(i)
}
function color_picker(p)
{
var colorBox = new ColorPicker();
mc.addChild(colorBox);
colorBox.x = 0
colorBox.y = p * 40;
//p++; //NO NEED TO INCREMENT THIS VALUE, IT'S GETTING FROM THE LOOP
colorBox.addEventListener(ColorPickerEvent.CHANGE, changeColor1)
}
var colorTransform1:ColorTransform = new ColorTransform();
function changeColor1(Event:ColorPickerEvent)
{
var color = "0x" +Event.currentTarget.selectedColor.toString(16);
colorTransform.color = color;
cards.getChildAt(0).transform.colorTransform = colorTransform;
}