![]() |
|
||||||||||
|
|
|
|||||
|
Регистрация: Oct 2006
Сообщений: 73
|
Здравствуйте,
на 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")) работает нормально? Объясните пожалуйста принцип. Как можно обратиться к этому текстовому полю в одной строке? |
|
|||||
|
Et cetera
Регистрация: Sep 2002
Сообщений: 30,787
|
А вы посмотрите, экземпляр какого класса возвращает метод getChildByName и у какого класса такой метод объявлен впервые.
|
|
|||||
|
Регистрация: Jul 2008
Адрес: Украина, Киев
Сообщений: 253
|
Цитата:
Создайте Document Class и в нем напишите следующее: TextField(form.txt).text = "sometext"; |
|
|||||
|
Et cetera
Регистрация: Sep 2002
Сообщений: 30,787
|
Прямое обращение по именам доступно в компиляторе CS3, но я бы не рекомендовал использовать прямые обращения.
|
|
|||||
|
Регистрация: Jul 2008
Адрес: Украина, Киев
Сообщений: 253
|
Лично я такие вещи вообще стараюсь не использовать... конструкции типа parent.parent.child.child... бр-р-р, путанина
Кстати, GRiNGA, не забудьте, что через stage или parent нельзя обращаться в конструкторе, т.к. код выполняется до того, как визуальные элементы добавляются на stage. |
|
|||||
|
Регистрация: Jul 2007
Адрес: Москва
Сообщений: 996
|
Цитата:
|
|
|||||
|
стервочка (я мужик)
|
mre, Вы издеваетесь? такое обращение не бывает необходимо
![]() |
|
|||||
|
Регистрация: Jul 2007
Адрес: Москва
Сообщений: 996
|
Не стану скрывать, конструкцией parent.child я порой пользуюсь, и до сегодняшнего дня у меня это не вызывало беспокойства.
Ситуация: класс Main, у него 2 child'а A и B. В слушателе некоторого события класса B мне необходимо вызвать метод класса A. Простите мою некомпетентность, но как это можно сделать по-другому? Или как переписать иерархию классов, чтобы не возникло такой ситуации? Может быть мне никто ранее не открыл глаза на эти вещи ![]() |
|
|||||
|
Et cetera
Регистрация: Sep 2002
Сообщений: 30,787
|
Послать событие. Можно даже всплывающее.
|
![]() |
![]() |
Часовой пояс GMT +4, время: 00:46. |
|
|
« Предыдущая тема | Следующая тема » |
|
|