Есть текстовое поле типа TextField. И есть две стрелочки, тип MovieClip, "верх" и "низ" соответственно.
Наводим на стрелочки (но не нажимаем), текстовое поле скролируется вверха или вниз, пока не достигнет края. Если отвести курсор от стрелочек, скроллинг останавливается.
Пока что у меня получилось при наведении в курсора на область текстовое поле скролируется только на один шаг. Дальше надо дёрнуть чуть мышкой, чтобы оно проползло ещё на шаг.
CODE
_root.onMouseMove = function(){
if(_xmouse>868&_xmouse<888&_ymouse>625&_ymouse<635) {
do{
r_top_ar._visible = true;
r_top_ar._alpha = 100;
txtholder.scroll+=1;
if (txtholder.scroll>=txtholder.maxscroll) {
r_bot_ar._visible = false;
}
}while(txtholder.scroll>txtholder.maxscroll)
}
if(_xmouse>868&_xmouse<888&_ymouse>270&_ymouse<280) {
do{
r_bot_ar._visible = true;
r_bot_ar._alpha = 100;
txtholder.scroll--;
if (txtholder.scroll<=1) {
r_top_ar._visible = false;
}
}while(txtholder.scroll<1)
}
}
Почему не применяю функции onRollOver и OnRollOut - стрелочки маленькие, ещё у них фон прозрачный.
Аналогичная ситуация, если вместо текстового поля есть MovieClip с маской, где вместо скроллинга играемся параметром ._y
Там вообще любые циклы приводят к зависанию, приходится довольствоваться if.
Вопрос вот в чём. Как подобное реализовать? Какова логика, что лучше применять вместо циклов?