![]() |
listener на переменую
помогите плз написать listener который бы выполнял некоторую функцию когда изменяется переменная _global.tmp
я нашел такую функцию .onChanged = function(){...} но у меня не получается. помогите плз |
ну по-корявому можно так =))
Код:
_global.tmp = 123; |
watch, addProperty…
|
так это же не лиснер.
__etc: можешь плз подробнее написать |
это метод текстфилда. А тебе наверно придется делать интервал и проверять каждую миллисекунду :) равно ли значение переменной предыдущему. Опыт (мой, конечно) показывает, что проще заделать какое-нибудь действие там, где она изменяется. Чтоб процессор не дымился :)
|
насколько я понял watch, addProperty можно применять только к Object.
а как тогда свойством сделать переменную _global.tmp ? |
О, да, __etc, расскажи про watch
|
Wolsh: ну такой метод постоянной проверки не очень симпатичен. а дело в том что у меня переменная может изменятся с нескольких подгружаемых мувиков, и для каждого писать действие которое надо делать просто выше моих сил
|
Код:
_global = new Object ();С подгружающимися мувиками работать не будет, досягаемость только в области текущего таймлайна. |
но ведь когда создаешь много подгружаемых мувиков не всегда удобно использовать рут
|
спасибо за ответ. буду пробовать!!!
|
Да тут любой объект делаешь, я не понял зачем товарищ screamge назвал его _global, очевидно чтобы всех запутать :)
|
слушайте! это ж не лисенер. если мы делаем вот так _global = new Object ();
то у нас уже с этого места ни одна глобальная переменная не прочитается больше!!!! А разве лисенером нельзя смотреть за переменными? |
Если в самом начале объявлена глобал переменная _global.tmp = 123 то дописываем _global = new Object (), по своей сути global это не объяект из этих соображений watch с ним не работает.
Лисенерами можно слушать, а слушать нужно события. Следить за значениями лисенер не обязан, решение а вам посоветовал в своём первом посте. Собственно: Код:
_root.speed = 0В продолжении темы слушателей, есть такая штука как dispatchEvent и вообще в таком случае почитайте про событийную модель во флеш. |
Создай глобальный объект, в него и пихай все переменные. Так примерно:
Код:
_global.RULEZ = {} |
та вообще если так сделать _global = new Object () написать в самом начале, то переменные вообще сума сходят и ничего не работает!
|
Цитата:
|
Вот именно. Создай любой объект и его свойством - переменную, за которой будешь следить, и всех делов. Объект просто придумай куда поместить чтоб легко достучаться можно было. А то _global... ишь, на святое позарились!
|
Про глобал объект как-то не подуал, стыдно :(
|
тут мне предложили такой вариант
Код:
this.watch("temp",watchF); |
Цитата:
|
Ну вот же работает
Код:
_reno = new Object (); |
| Часовой пояс GMT +4, время: 17:14. |
Copyright © 1999-2008 Flasher.ru. All rights reserved.
Работает на vBulletin®. Copyright ©2000 - 2026, Jelsoft Enterprises Ltd. Перевод: zCarot
Администрация сайта не несёт ответственности за любую предоставленную посетителями информацию. Подробнее см. Правила.