Форум Flasher.ru

Форум Flasher.ru (http://www.flasher.ru/forum/index.php)
-   ActionScript 3.0 (http://www.flasher.ru/forum/forumdisplay.php?f=83)
-   -   не работает getChildByName (http://www.flasher.ru/forum/showthread.php?t=157864)

Max360 11.06.2011 23:34

Вложений: 1
Не судите строго )))

udaaff 11.06.2011 23:45

stage -> root -> ваш мувик. Иерархия такая.
Код AS3:

new Main(this); // this ссылается на root в данном случае

В Main соответствующие изменения также нужно будет сделать.

Или пропишите Main документ классом. Только тип поменяйте на MovieClip. + необходимые изменения.

carrotoff 11.06.2011 23:47

Зачем такое шаманство? сделайте Main документ классом

Пардон, опоздал

fish_r 11.06.2011 23:49

Ваши символы лежат на сцене но имени у них нет (определенного), а в библиотеке они не залинкованы для использования в AS. Поэтому у вас не получается.

Добавлено через 2 минуты
Либо на сцене символам пропишите имена в instancename, либо залинкуйте их в библиотеке Properties->Export for ActionScript и Export in frame 1. Создайте в коде экземпляр этого символа и добавьте на сцену...
И да... пропишите по-человече документ-класс.

Max360 11.06.2011 23:52

исправил ссылку на this и все получилось! спасибо огромное, сам наверное еще б 2 дня думал в чем прикол )

Psycho Tiger 11.06.2011 23:54

1) Нет кастинга к MovieClip
Код AS3:

_stage.getChildByName("exitWin_mc").gotoAndStop(1);

Правильно так:
Код AS3:

(_stage.getChildByName("exitWin_mc") as MovieClip).gotoAndStop(1);

2) gotoAndStop принимает аргументом номер кадра. Исчисление начинается с 1, gotoAndStop(0) не имеет смысла.

3) На stage`е у Вас нету exitWin_but. Он есть на root`е. Вместо stage передавайте, например, this.

fish_r 11.06.2011 23:57

Цитата:

Сообщение от Psycho Tiger (Сообщение 1003069)
1) Нет кастинга к MovieClip
Код AS3:

_stage.getChildByName("exitWin_mc").gotoAndStop(1);

Правильно так:
Код AS3:

(_stage.getChildByName("exitWin_mc") as MovieClip).gotoAndStop(1);

2) gotoAndStop принимает аргументом номер кадра. Исчисление начинается с 1, gotoAndStop(0) не имеет смысла.

3) На stage`е у Вас нету exitWin_but. Он есть на root`е. Вместо stage передавайте, например, this.

Это, в данном случае, SimpleButton... Хотя работать, конечно, будет и так.

Psycho Tiger 12.06.2011 00:02

В исходнике у него стоял тип MovieClip, ниче не знаю )

fish_r 12.06.2011 00:52

Ха! А ведь действительно - для реакции кнопки вам не нужно подписывать mouse_over/mouse_out она обеспечивает, по умолчанию, переход по кадрам при наведении и уходе курсора. Так что весь этот "огород" излишен :)

Добавлено через 1 минуту
http://help.adobe.com/ru_RU/FlashPla...pleButton.html

Dron1564 13.06.2011 14:05

Код AS3:

trace( stage.getChildByName("exitWin_but") );

пробовал трейсить??...
Если null или undefined тогда внимательнее посмотри имя на сцене..

Попробуйте к классу просто дописать dynamic...?

И да зачем вообще:
Код AS3:

getChildByName()

carrotoff тему говорит..


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

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