2010-01-06 43 views
1

新年快樂2010大家:)剛回到閃存槽,並有一個簡單的問題。如何更改movieClip的顏色?

我有一個電影(視頻播放器)的按鈕顏色的變化。我已經繪製出按鈕並創建了1個顏色框(movieClip),它將成爲所有按鈕的背景。

我已經使用ColorTransform來改變我使用代碼創建的矩形的顏色,但什麼是最簡單的方法去改變包含您物理繪製出的圖形的movieClip中的顏色。

路徑的動畫片段,我需要改變的十六進制值:controls.btn_Sound.colorChip

回答

2

如果controls.btn_Sound.colorChip是一個MovieClip或Sprite,你可以使用繪圖API改變它的圖形屬性。

所以不是:

colorChip = 0xCCCCCC; btnColor_sound.color = colorChip;

做到這一點:

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類和Drawing API,這些應該有助於澄清這一點。

+0

謝謝,我想我會有最終以這種方式來討論它...... – 2010-01-06 18:41:30

2

我用的ColorMatrixFilter改變顏色屬性我的精靈,司儀:

例如:

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]; 

這裏你是一個鏈接a good guide

+0

非常感謝,我已經爲此項目添加了書籤:)但是我需要使用精確的十六進制值,並且看起來這種方法會讓它很難得到確切的顏色 – 2010-01-06 18:46:44