Въпрос!!!
4 отговора
173 прегледа
Въпрос!!!
Как да направя така, че при прес на бутон даден текст в TextField да започне да се скролва и при release да спре? Имам предвид не при всяко натискане да се скролва само по едно редче. Родих някакви жалки идеи да го направя със stop и play на movie clip, в който текстът постоянно да се скролва, но това - пак ще кажа - е мизерия.
Re: Въпрос!!!
Qvno iskash 'gladuk' SCROLL
s nqkolko dumi:
postavqsh textovoto pole v MC i prosto mestish nego nagore-nadolu...Comprende?
|Не закусвам-влюбен съм. Не обядвам-влюбен съм. Не вечерям-влюбен съм. Не спя-гладен съм|
s nqkolko dumi:
postavqsh textovoto pole v MC i prosto mestish nego nagore-nadolu...Comprende?
|Не закусвам-влюбен съм. Не обядвам-влюбен съм. Не вечерям-влюбен съм. Не спя-гладен съм|
Teoria
Теорията на скрола е много проста (вариантът на Moonjogger с местене на цялото филмче е съвсем различен и е ясен) - добавяш към параметъра scroll единица, докато не достигне maxscroll.
На какъв интервал ще добавяш и как ще го направиш е въпрос на вкус - можеш да използваш movieclip, в който на всеки фрейм (или през 5 фрейма и т.н.) се казва scroll++. Можеш да ползваш и timer или новите функции на FlashMX за задаване на delay.
Преимуществото на този вариант пред варианта на Moonjogger (който е по-гладък), e че преместването на ред е винаги фиксирано и по този начин, като отчетеш колко е scroll в момента, можеш винаги да знаеш какво точно е посочил с мишката user-a. Например текстът е списък на нещо и върху цялото текстово поле има бутон. Юзърът посочва нещо и в зависимост от това какво е то, се изпълнява различен код. Като си знаеш предварително _y координатата на първия ред и през колко е всеки следващ ред, лесно се изчислява кой ред е натиснал. По този начин избягваш хиляда бутона. Лично аз си слагам и едно червено полупрозрачно правоъгълниче, което се премества в зависимост от мишката и маркира на Юзъра какво е натиснал.
Последна бележка - ако си добавил и поддръжка на клавиши за скролване, аз предпочитам onClipEvent (keyUp) вместо onClipEvent (keyDown), защото в последния случай много зависиш от скоростта на повтаряне на клавиатурата и се случва, като натиснеш веднъж, да се прескочат два реда, вместо един.
На какъв интервал ще добавяш и как ще го направиш е въпрос на вкус - можеш да използваш movieclip, в който на всеки фрейм (или през 5 фрейма и т.н.) се казва scroll++. Можеш да ползваш и timer или новите функции на FlashMX за задаване на delay.
Преимуществото на този вариант пред варианта на Moonjogger (който е по-гладък), e че преместването на ред е винаги фиксирано и по този начин, като отчетеш колко е scroll в момента, можеш винаги да знаеш какво точно е посочил с мишката user-a. Например текстът е списък на нещо и върху цялото текстово поле има бутон. Юзърът посочва нещо и в зависимост от това какво е то, се изпълнява различен код. Като си знаеш предварително _y координатата на първия ред и през колко е всеки следващ ред, лесно се изчислява кой ред е натиснал. По този начин избягваш хиляда бутона. Лично аз си слагам и едно червено полупрозрачно правоъгълниче, което се премества в зависимост от мишката и маркира на Юзъра какво е натиснал.
Последна бележка - ако си добавил и поддръжка на клавиши за скролване, аз предпочитам onClipEvent (keyUp) вместо onClipEvent (keyDown), защото в последния случай много зависиш от скоростта на повтаряне на клавиатурата и се случва, като натиснеш веднъж, да се прескочат два реда, вместо един.
Re: Teoria
Dobri poznania v teoriata na scrolla, no vse pak procheti thread-a
>>> kato natisna button(ne key)
kakto i da e
Triabva da reshish za kakvo shte go polzvash tozi text - ako shte e statichen varianta koito kaza moonjogger ima mnogo preimushtestva - skorost na scrollvane -efecti na dvijenieto i da ne izbroiavam vsichko
S malko poveche pisane moje da se priloji i za dynamichno promeniash se text
Varianta koito az sum postnal e prost is e izpulniava za 10 min s 3 reda cod i bez nikakvi nastroiki moje da ti scrollva kolkoto text si iskash, koito moje da go loadvash otkude to si poiskash(textov file - user input, XML, serve-side script)
No puk skorosta na scroll-a e gore dolu fixirana i ne e gladuk, niama opcii za efecti
Vsichko e vupros na tova kakvo iskash da postignesh - reshenia sigurno ima niakolko desetki :)
>>> kato natisna button(ne key)
kakto i da e
Triabva da reshish za kakvo shte go polzvash tozi text - ako shte e statichen varianta koito kaza moonjogger ima mnogo preimushtestva - skorost na scrollvane -efecti na dvijenieto i da ne izbroiavam vsichko
S malko poveche pisane moje da se priloji i za dynamichno promeniash se text
Varianta koito az sum postnal e prost is e izpulniava za 10 min s 3 reda cod i bez nikakvi nastroiki moje da ti scrollva kolkoto text si iskash, koito moje da go loadvash otkude to si poiskash(textov file - user input, XML, serve-side script)
No puk skorosta na scroll-a e gore dolu fixirana i ne e gladuk, niama opcii za efecti
Vsichko e vupros na tova kakvo iskash da postignesh - reshenia sigurno ima niakolko desetki :)