Форум Flasher.ru

Форум Flasher.ru (http://www.flasher.ru/forum/index.php)
-   ActionScript 1.0/2.0 (http://www.flasher.ru/forum/forumdisplay.php?f=93)
-   -   Обработчик событий (http://www.flasher.ru/forum/showthread.php?t=95745)

undeddy 13.05.2007 06:57

Обработчик событий
 
Мувиклип аттачится программно, когда пользователь совершает определенные действия. Тогда каким образом приписать обработчик событий к этому программно созданному мувиклипу?

screamge 13.05.2007 07:48

точно также как и к неотаченному

Код:

[ссылка на объект].onEvent = function ...

undeddy 13.05.2007 08:22

Но ведь аттачится мувиклип не сразу после загрузки приложения, а после совершения пользователем некоторых действий. Поэтому обычным образом обработчик событий не приписать. Он не действует тогда.

screamge 13.05.2007 08:34

мувик который аттачится ведь есть на сцене?

undeddy 13.05.2007 08:47

В том-то и дело, что нет.

screamge 13.05.2007 08:58

когда аттачите тогда и вешайте на него обработчика, а вообще я заюзал бы класс для аттачащегося.

И вообще как вы аттачите если клипа нет на сцене и он не экспортируется в первом кадре?

undeddy 13.05.2007 09:25

Нет, он экспортируется в первый кадр.

Выходит, что нужно применять конструкцию "обработчик в обработчике", если без использования класса для аттачевающегося ?

Kikasso 13.05.2007 10:34

или аттачить с initObj:
Код:

function testPress():Void{ trace(this + " pressed"); }
function testRelease():Void{ trace(this + " released"); }
var initObj:Object = {
onPress:testPress,
onRelease:testRelease
}
attachMovie("mc","mc",1,initObj);

initObj может быть один на много мувиков

Но я не пойму, что может сделать пользователь, что обработчик не вешается? Флеш закрывает?

undeddy 13.05.2007 10:54

Я недосказал. Дело в том, что в том клипе, который аттачится, есть еще несколько мувиклипов. И обработчик нужно привязать к одному из этих вложенных клипов.
К самому аттачивающемуся клипу привязать обработчик я с вашей помощью смог. А вот как привязать обработчик к вложенным клипам?
Можно, конечно, написать обработчики в аттачивающемся клипе, но мне нужно повесить обработчики в 'главном' клипе. 'главный' - тот, куда аттачивается мувиклип.

lowka 13.05.2007 12:39

Код:

var depth = 0;
var mc = this.attachMovie("movie", "mc", depth);
mc["innerMC"].onPress = ...



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

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