![]() |
getChildByName у потомка потомка?
Здравствуйте,
на mainTimeLine создается MovieClip "form", в котором потом создается TextField "txt" Также на mainTimeLine создается MovieClip "btn". Как можно из "btn" обратиться к текстовому полю "txt"? Почему trace(this.parent.getChildByName("form").getChildByName("txt") ) выдает ошибку? А через вот так: var _child=this.parent.getChildByName("form"); trace(_child.getChildByName("form")) работает нормально? Объясните пожалуйста принцип. Как можно обратиться к этому текстовому полю в одной строке? |
А вы посмотрите, экземпляр какого класса возвращает метод getChildByName и у какого класса такой метод объявлен впервые.
|
Цитата:
Создайте Document Class и в нем напишите следующее: TextField(form.txt).text = "sometext"; |
Цитата:
|
Попробуй обратится к form через root если он конешно на нем. Затем и тексту.
|
Лично я такие вещи вообще стараюсь не использовать... конструкции типа parent.parent.child.child... бр-р-р, путанина
Кстати, GRiNGA, не забудьте, что через stage или parent нельзя обращаться в конструкторе, т.к. код выполняется до того, как визуальные элементы добавляются на stage. |
Цитата:
|
mre, Вы издеваетесь? такое обращение не бывает необходимо :)
|
mre, если мне необходимо такое обращение, то я сожусь и перерабатываю написанную иерархию классов - т.к. с такой кашей работать уже нету сил :))))
|
нужно напсиать вот так
Код:
MovieClip(this.parent.getChildByName("form")).getChildByName("txt") |
| Часовой пояс GMT +4, время: 20:24. |
Copyright © 1999-2008 Flasher.ru. All rights reserved.
Работает на vBulletin®. Copyright ©2000 - 2026, Jelsoft Enterprises Ltd. Перевод: zCarot
Администрация сайта не несёт ответственности за любую предоставленную посетителями информацию. Подробнее см. Правила.