Como mudar a cor de um clipe de filme?
-
19-09-2019 - |
Pergunta
Ano novo feliz 2010 a todos:). Apenas ficando para trás no sulco Flash, e ter uma pergunta simples
Eu tenho um filme (player de vídeo), onde a cor dos botões muda. Eu já retirado os botões e criou uma caixa de 1 cor (movieClip) que será o fundo de todos os botões.
Eu usei ColorTransform para mudar a cor de um retângulo que eu usei código para criar, mas o que é a maneira mais simples para ir sobre como alterar a cor de um movieClip contendo um gráfico que você fisicamente têm puxado.
Caminho para movieClip que eu preciso para alterar o valor HEX de: controls.btn_Sound.colorChip
Solução
Se controls.btn_Sound.colorChip é um MovieClip ou Sprite, você pode usar a API de desenho para alterar suas propriedades gráficas.
Assim em vez de:
colorChip = 0xCCCCCC; btnColor_sound.color = colorChip;
fazer isso:
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()
Isso é um vey básica maneira de fazê-lo. Você provavelmente vai querer para limpá-lo cada vez que você mudar as cores, e talvez modificar o estilo de linha. Procure a classe Graphics e na API de desenho nos docs AS3, aqueles devem ajudar a esclarecer isso.
Outras dicas
Eu costumava ColorMatrixFilter para propriedades de cor alter aos meus Sprites, MCs:
exemplo:
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];
aqui está você, um link para um guia de boas