![]() |
|
||||||||||
|
|
|
|||||
|
Регистрация: Feb 2006
Сообщений: 36
|
есть код:
on (rollOut) { setProperty(this, _yscale, 45); setProperty(this, _xscale, 45); } on (rollOver) { setProperty(this, _yscale, 100); setProperty(this, _xscale, 100); } который увеличивает при наведении объект. Но это происходит резко (сразу крупно или мелко). как сделать замедление scale'а. можно конечно создать мувик и назначить на on (release). Но хочется узнать как сделать это програмными средствами. Спасибо |
|
|||||
|
Регистрация: Nov 2003
Адрес: Россия
Сообщений: 56
|
Можно так:
Где мув _root.a a.onRollOver = function() {
this.onEnterFrame = function() {
_root.Size(true, this);
};
};
a.onRollOut = function() {
this.onEnterFrame = function() {
_root.Size(false, this);
};
};
function Size(arg, patch) {
if (arg && patch._xscale>100) {
patch._xscale = 100;
delete patch.onEnterFrame;
}
if (!arg && patch._xscale<45) {
patch._xscale = 45;
delete patch.onEnterFrame;
}
arg = (arg) ? 1 : -1;
patch._xscale += arg;
patch._yscale += arg;
}
stop();
![]()
__________________
ReN |
|
|||||
|
Мне кажется, что плавность надо делать через SetInterval и потом по достижении нужного масштаба интервал гасить
__________________
Come night so comes my time to smile ))) |
|
|||||
|
посмотри Tween.., готовым пользоватья удобнее, имхо:
on (rollOut) {
new mx.transitions.Tween(this,"_xscale",null,this._xscale,45,10);
new mx.transitions.Tween(this,"_yscale",null,this._yscale,45,10);
}
on (rollOver) {
new mx.transitions.Tween(this,"_xscale",null,this._xscale,100,10);
new mx.transitions.Tween(this,"_yscale",null,this._yscale,100,10);
}
|
|
|||||
|
Силин как всегда неотразимо краток
![]() 5 балов |
|
|||||
|
Регистрация: Nov 2003
Адрес: Россия
Сообщений: 56
|
Да, точно... Забыл в своем примере еще и onEnterFrame убить...
![]()
__________________
ReN |
|
|||||
|
Регистрация: Feb 2006
Сообщений: 36
|
Всем большое спасибо. Особенно silin'у-просто супер.
|
![]() |
![]() |
Часовой пояс GMT +4, время: 07:43. |
|
|
« Предыдущая тема | Следующая тема » |
|
|