Форум Flasher.ru

Форум Flasher.ru (http://www.flasher.ru/forum/index.php)
-   ActionScript 3.0 (http://www.flasher.ru/forum/forumdisplay.php?f=83)
-   -   Как найти класс? (http://www.flasher.ru/forum/showthread.php?t=140740)

inMashine 07.06.2010 00:45

Как найти класс?
 
Добрый вечер всем.
Не могу понять как найти нужный класс. Скачал "Справочник по языку ActionScript 3.0 и его компонентам" - там не работает поиск, перечитал все классы - как будто нет такого. Подскажите, если кто знает.

Нужна такая штука:
my_mc.addEventListener(Класс, который позволяет определить на каком по счету кадре находится в данный момент головка воспроизведения (PlayHead ) , myFunction);

wvxvw 07.06.2010 00:56

MovieClip.currentFrame ?
Только не совсем понятно при чем тут addEventListener

inMashine 07.06.2010 01:17

Хотел сделать по аккуратней - вот и прилепил туда слушатель.
MovieClip.currentFrame - работает.
Пасибо.

Добавлено через 17 минут
Прошу прощения, не совсем получилось то чего хотелось.
Хотелось что бы в момент, когда playhead дойдет до 5го кадра воспроизведение остановилось.
Просто написать if(mc.currentFrame == 5) не работает.
В AS3 как я понял нет такой штуки как mc.onClipEcent(enterFrame),
поэтому к слушателю меня и потянуло.

КорДум 07.06.2010 01:45

addFrameScript вам поможет.

gloomyBrain 07.06.2010 01:50

Цитата:

В AS3 как я понял нет такой штуки как mc.onClipEcent(enterFrame),
поэтому к слушателю меня и потянуло
Да, но есть Event.ENTER_FRAME, который можно слушать и в обработчике проверять номер текущего кадра. Или все тот же addFrameScript()... Правда про метод removeFrameScript() я не слышал, поэтому, на мой взгляд, уж лучше Event.ENTER_FRAME

ChuwY 07.06.2010 03:16

Вот как-то так, пожалуй, это должно выглядеть.
Код AS3:

my_mc.addEventListener(Event.ENTER_FRAME, myFunction);
function myFunction(event : Event):void{
  if(event.currentTarget.currentFrame == 5){
    event.currentTarget.stop();
  }
}


etc 07.06.2010 08:16

ChuwY, именно так оно никогда не должно выглядеть.
Ваш пример — квинтэссенция того, как делать не нужно никогда.

ChuwY 07.06.2010 15:25

Нет =) Можно еще функцию описать сразу в аргументе -- получится еще отвратительнее.
Подскажите, как нужно делать, а то я не очень разбираюсь.

etc 07.06.2010 17:41

Ответ в четвертом посте.

gloomyBrain 07.06.2010 17:55

etc, а чем такой подход лучше?


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

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