Форум Flasher.ru

Форум Flasher.ru (http://www.flasher.ru/forum/index.php)
-   ActionScript 3.0 (http://www.flasher.ru/forum/forumdisplay.php?f=83)
-   -   Почему map.getChildAt(12).currentFrame не работает? (http://www.flasher.ru/forum/showthread.php?t=185259)

Вопросник 08.10.2012 23:16

Почему map.getChildAt(12).currentFrame не работает?
 
Здраствуйте.
Почему --- map.getChildAt(12).currentFrame не работает???

Koopa 08.10.2012 23:25

Потому что у метода getChildAt нет свойства currentFrame.CurrentFrame есть у объекта,который вы получаете методом getChildAt.

Вопросник 08.10.2012 23:28

А как мне исправить?

КорДум 08.10.2012 23:28

Koopa, что за такое вы говорите? о_О

getChildAt() возвращает экземпляр класса DisplayObject. У него нет этого свойства. Нужно кастовать.
Код AS3:

(map.getChildAt(12) as MovieClip).currentFrame


Вопросник 08.10.2012 23:36

Спасибо. Работает.

Koopa 08.10.2012 23:41

I have a dream, что вопрос был таки за муви с фреймами.
Код AS3:

 var 'ваша переменная'=map.getChildAt(12);
'ваша переменная'.currentFrame 'ваши действия'.

Текст внутри ' ' может быть на ваше усмотрение.

mooncar 09.10.2012 00:15

Koopa, мы тут говорим по-русски, не забывайте.

Jewelz 09.10.2012 11:58

Цитата:

Сообщение от Koopa (Сообщение 1099095)
Код AS3:

 var 'ваша переменная'=map.getChildAt(12);
'ваша переменная'.currentFrame 'ваши действия'.


и чем это отличается от кода в первом посте?

caseyryan 09.10.2012 12:32

Цитата:

Сообщение от Koopa (Сообщение 1099095)
I have a dream, что вопрос был таки за муви с фреймами.
Код AS3:

 var 'ваша переменная'=map.getChildAt(12);
'ваша переменная'.currentFrame 'ваши действия'.

Текст внутри ' ' может быть на ваше усмотрение.

Ну, далеко не любой текст там может быть. Есть правила именования переменных, от которых отойти нельзя. Так что это высказывание уже не верно. К слову, название переменной не может начинаться с числа и не может содержать пробелов (конечно это не все требования).

Второе, как уже сказал КорДум, нужно приводить DisplayObject к типу MovieClip. currentFrame есть у мувиклипа либо у его наследников, но не у DisplayObject
К типу мувиклип можно привести еще так:
Код AS3:

MovieClip(map.getChildAt(12)).currentFrame;

Точнее это будет не приведение к типу, а преобразование типа. Но в данном случае и это подойдет.


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

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