2010-05-15 42 views

回答

4

调查ColorTransform。所有DisplayObject(即Sprite,MovieClip,Shape等)都有一个名为transform的属性,该属性又包含一个名为ColorTransform的属性。

下面的代码使得它如此用黑色填充颜色的方形改为绿色:

 
var square:Shape = new Shape(); 
square.graphics.beginFill(0x000000); 
square.graphics.drawRect(0, 0, 200, 200); 

var ct:ColorTransform = square.transform.colorTransform; 
ct.color = 0x00FF00; 
square.transform.colorTransform = ct; 

addChild(square); 
+0

谢谢您的回答。我的按钮(每个按钮都有独特的形状)。有没有更改按钮的fillColor的方法。 – Win 2010-05-15 19:08:12

+1

如果当你说按钮意味着fl.controls.Button,那么提供的答案将工作。事实上,如果你可以*在Flash中看到*屏幕上的东西,那么它具有* transform *属性,该属性又具有* colorTransform *属性... – heavilyinvolved 2010-05-16 03:59:25

+0

每个按钮都是单个映射。我从Illustrator导入到闪存库,并将它们转换为按钮(它们不是矩形)。现在,我手动更改每个县的颜色。我发现我无法在代码中更改按钮的填充颜色,除非将这些按钮转换为影片剪辑。谢谢你的答案;真的很喜欢它! – Win 2010-05-19 04:24:18