Форум Flasher.ru

Форум Flasher.ru (http://www.flasher.ru/forum/index.php)
-   ActionScript 3.0 (http://www.flasher.ru/forum/forumdisplay.php?f=83)
-   -   Обращение к объекту по instance name (http://www.flasher.ru/forum/showthread.php?t=212482)

Фомич 22.02.2016 15:41

Обращение к объекту по instance name
 
Приветствую! Пытаюсь обратится к instance name объектов на сцене, чтобы их перебрать и каждому повесить слушатель события. То есть я их не добавлял программно на сцену, как положено, просто прописываю имена. Возможно мне пришлют ещё таких-же с выставленными позициями, так что способ добавления addChild не подходит.

caseyryan 22.02.2016 15:58

И в чем проблема?

undefined 22.02.2016 15:58

в чем вопрос то?

Фомич 22.02.2016 16:05

Код AS3:

btnGotoFrame('btn2', 2);// где btn2 заданный объекту instance name, объект на сцене
 
function btnGotoFrame(toname, toframe):void
  {
 
    xxx(toname).addEventListener(MouseEvent.MOUSE_DOWN, function(){gotoAndStop(toframe);});
 
  }

Проблема в xxx

undefined 22.02.2016 16:41

попробуй
Код AS3:

 xxx[toname].addEventListener(MouseEvent.MOUSE_DOWN, function(){gotoAndStop(toframe);});

и и еще не используй анонимные функции.Как потом отписываться от них? это раз
переменная toframe может иметь произвольное значение к моменту вызова хэндлера.Это два

Добавлено через 3 минуты
все хэндлеры должны принимать на вход один параметр-событие это три.

Фомич 22.02.2016 16:55

undefined, я имел ввиду - что мне туда вставить вместо xxx, getChildByName не срабатывает
в конкретной обстановке отписываться не нужно будет потом

undefined 22.02.2016 18:00

Фомич,у тебя каша в голове.getChildByName - это метод. Вместо xxx должен быть объект-контейнер, где лежат твои кнопки и скобки должны быть не круглые,а квадратные.

Фомич 22.02.2016 19:03

undefined, к сожалению "должно быть" существует в идеальном мире, утопии, а у меня на руках файл, в котором дизайнер расставил объекты на сцене, вот по их именам instance name мне необходимо обратится и установить прослушку. Если под объектом контейнером ты имеешь ввиду объект вроде stage, то какой-то смысл твоего сообщения я начинаю видеть.

faraday 22.02.2016 19:25

Код AS3:

this['name']
getChildByName('name')

в чем проблема?

Фомич 22.02.2016 19:38

faraday, спасибо!


Часовой пояс GMT +4, время: 02:36.

Copyright © 1999-2008 Flasher.ru. All rights reserved.
Работает на vBulletin®. Copyright ©2000 - 2024, Jelsoft Enterprises Ltd. Перевод: zCarot
Администрация сайта не несёт ответственности за любую предоставленную посетителями информацию. Подробнее см. Правила.