PDA

Просмотр полной версии : Плавная смена цвета текста


StreetPeople
05.07.2007, 21:32
Мне нужно цвет текста паменять, с белого, на чёрный. Причём смена текста должна быть плавной.

newcolor=255;
function alphachange(object, what) {
object.color=RGB(newcolor,newcolor,newcolor);

if( what == 1 ){
newcolor-=2;
}else{
newcolor+=2;
}
}


this["label_txt_"+i].interval = setInterval(alphachange, 1, this["label_txt_"+i], 1);

Думал так выйдет - ан нет.

Каким образом можно записать эту строчку:?
object.color=RGB(newcolor,newcolor,newcolor);

BigDan
05.07.2007, 21:41
var r:Number = 0;
var g:Number = 0;
var b:Number = 0;
var result:String;
onEnterFrame = function(){
if(r < 255){
++r;
}else{
delete this.onEnterFrame;
}
result = "0x"+r.toString(16)+g.toString(16)+b.toString(16);
}
+TextFormat.color

StreetPeople
05.07.2007, 21:57
Неработает =(

Может это из-за одинарных символов ("0x111", "0x222"..."0xfff")?
...
var r:Number = 0;var g:Number = 0;var b:Number = 0;
++r; ++g; ++b;
trace("0x"+r.toString(16)+g.toString(16)+b.toString(16));
...

0x111
0x222
0x333
0x444
0x555
0x666
0x777
0x888
0x999
0xaaa
0xbbb
0xccc
0xddd
0xeee
0xfff
0x101010
0x111111
0x121212
0x131313

silin
05.07.2007, 22:00
var tf:TextField=this.createTextField("tf",0,0,0,100,20);
tf.text="blabla";
tf.background=true;
tf.backgroundColor=0x666666;

var n=255;
function setTextColor(){
tf.textColor=n<<16 | n<<8 | n;
if(!n) clearInterval(id);
n--;
}
var id=setInterval(this,"setTextColor",10);

StreetPeople
05.07.2007, 22:16
Спасибо =)
Работает отлично.

etc
06.07.2007, 09:12
http://dev.etcs.ru/blog/as2/ru/etcs/draw/simplegradient/