Pregunta

Feliz año nuevo 2010 a todos :) Volviendo al ritmo de Flash y teniendo una pregunta sencilla.

Tengo una película (reproductor de video) donde cambia el color de los botones.Ya dibujé los botones y creé un cuadro de 1 color (movieClip) que será el fondo de todos los botones.

He usado ColorTransform para cambiar el color de un rectángulo que usé código para crear, pero ¿cuál es la forma más sencilla de cambiar un color en un movieClip que contiene un gráfico que usted ha dibujado físicamente?

Ruta al movieClip del que necesito cambiar el valor HEX:controles.btn_Sound.colorChip

¿Fue útil?

Solución

Si controls.btn_Sound.colorChip es un clip de película o Sprite, puede utilizar la API de dibujo para cambiar sus propiedades gráficas.

Así que en lugar de:

colorChip = 0xCCCCCC; btnColor_sound.color = colorChip;

hacer esto:

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()

Eso es una forma básica encuesta para hacerlo. Es probable que desee para desactivarla a cabo cada vez que se cambian los colores, y tal vez modificar el estilo de línea. Busque la clase Graphics y la API de dibujo en la documentación de AS3, los debería ayudar a aclarar esto.

Otros consejos

He utilizado ColorMatrixFilter para alterar las propiedades de color a mis Sprites, MCs:

ejemplo:

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

aquí está, un enlace una buena guía

Licenciado bajo: CC-BY-SA con atribución
No afiliado a StackOverflow
scroll top