1

2010 年大家新年快乐 :)刚刚回到 Flash 状态,并有一个简单的问题。

我有一个按钮颜色发生变化的电影(视频播放器)。我已经画出了按钮并创建了一个 1 颜色框(movieClip),它将作为所有按钮的背景。

我已经使用 ColorTransform 更改了我使用代码创建的矩形的颜色,但是在包含您物理绘制的图形的movieClip 中更改颜色的最简单方法是什么。

我需要更改 HEX 值的movieClip 的路径:controls.btn_Sound.colorChip

4

2 回答 2

2

如果 controls.btn_Sound.colorChip 是 MovieClip 或 Sprite,您可以使用绘图 API 更改其图形属性。

所以而不是:

颜色芯片=0xCCCCCC;btnColor_sound.color=颜色芯片;

做这个:

controls.btn_Sound.colorChip.graphics.beginFill(colorChip, 1);
controls.btn_Sound.colorChip.lineStyle(1, 0x000000);
controls.btn_Sound.colorChip.drawRect(0, 0, 10, 10); // fill in this with your colorChip's dimensions
controls.btn_Sound.colorChip.endFill()

这是一个非常基本的方法。每次切换颜色时,您可能都希望将其清除,并可能修改线条样式。在 AS3 文档中查找 Graphics 类和绘图 API,这些应该有助于澄清这一点。

于 2010-01-06T18:09:57.830 回答
2

我使用 ColorMatrixFilter 来改变我的 Sprites、MCs 的颜色属性:

例子:

var matrix:Array = new Array();
matrix=matrix.concat([0.5,0.5,0.5,0,0]);// red
matrix=matrix.concat([0.5,0.5,0.5,0,0]);// green
matrix=matrix.concat([0.5,0.5,0.5,0,0]);// blue
matrix=matrix.concat([0,0,0,1,0]);// alpha
var my_filter:ColorMatrixFilter=new ColorMatrixFilter(matrix);
my_sprite.filters=[my_filter];

你在这里,一个好的指南的链接

于 2010-01-06T18:01:20.420 回答