Форум Flasher.ru
Ближайшие курсы в Школе RealTime
Список интенсивных курсов: [см.]  
  
Специальные предложения: [см.]  
  
 
Блоги Правила Справка Пользователи Календарь Сообщения за день
 

Вернуться   Форум Flasher.ru > Flash > ActionScript 1.0/2.0

Версия для печати  Отправить по электронной почте    « Предыдущая тема | Следующая тема »  
Опции темы Опции просмотра
 
Создать новую тему Ответ
Старый 01.09.2005, 00:02
sher83 вне форума Посмотреть профиль Отправить личное сообщение для sher83 Посетить домашнюю страницу sher83 Найти все сообщения от sher83
  № 1  
Ответить с цитированием
sher83

Регистрация: Aug 2002
Адрес: Латвия, Рига
Сообщений: 52
По умолчанию onRelease для динамически создаваемых movieclip'ov

Есть код типа:

target_mc.onRelease = function () {
trace("onRelease called");
};

Он у меня почему-то упорньо не хочет работать с мувиклипами, которые создаются командой:

createEmptyMovieClip("target_mc", _root.getNextHighestDepth());

Что делать?

Старый 01.09.2005, 00:04
iNils вне форума Посмотреть профиль Отправить личное сообщение для iNils Посетить домашнюю страницу iNils Найти все сообщения от iNils
  № 2  
Ответить с цитированием
iNils
Негуру
 
Аватар для iNils

администратор
Регистрация: Jan 2000
Адрес: Кёнигсберг in Moscow
Сообщений: 21,883
Записей в блоге: 7
надо сначала создать клип, а потом присвоить ему обработчик события.
__________________
(и)Нильс.ru | Плагины для FlashDevelop

Старый 01.09.2005, 00:10
sher83 вне форума Посмотреть профиль Отправить личное сообщение для sher83 Посетить домашнюю страницу sher83 Найти все сообщения от sher83
  № 3  
Ответить с цитированием
sher83

Регистрация: Aug 2002
Адрес: Латвия, Рига
Сообщений: 52
Да, я именно так и делаю. Если быть точным, то вот кусок кода, который не работает:

for(i=1; i <= imgs_qty; i++) {
createEmptyMovieClip("target_mc"+i, _root.getNextHighestDepth());
target_mc = eval("target_mc"+i);

mc_url = eval("t_image"+i);
loadMovie(mc_url, target_mc);

target_mc._x = 4;
target_mc._y = +y;

y += 57;
}

target_mc1.onRelease = function (){
trace("onRelease called");
};

Старый 01.09.2005, 00:21
iNils вне форума Посмотреть профиль Отправить личное сообщение для iNils Посетить домашнюю страницу iNils Найти все сообщения от iNils
  № 4  
Ответить с цитированием
iNils
Негуру
 
Аватар для iNils

администратор
Регистрация: Jan 2000
Адрес: Кёнигсберг in Moscow
Сообщений: 21,883
Записей в блоге: 7
а картинка грузится?
__________________
(и)Нильс.ru | Плагины для FlashDevelop

Старый 01.09.2005, 00:22
sher83 вне форума Посмотреть профиль Отправить личное сообщение для sher83 Посетить домашнюю страницу sher83 Найти все сообщения от sher83
  № 5  
Ответить с цитированием
sher83

Регистрация: Aug 2002
Адрес: Латвия, Рига
Сообщений: 52
да, картинка грузится нормально.

Старый 01.09.2005, 00:23
sher83 вне форума Посмотреть профиль Отправить личное сообщение для sher83 Посетить домашнюю страницу sher83 Найти все сообщения от sher83
  № 6  
Ответить с цитированием
sher83

Регистрация: Aug 2002
Адрес: Латвия, Рига
Сообщений: 52
сначала это все было запихано в мувиклип, но я специально вытащил все в рут, т.к. прочитал, что иначе onRelease работать не будет.

Старый 01.09.2005, 00:33
iNils вне форума Посмотреть профиль Отправить личное сообщение для iNils Посетить домашнюю страницу iNils Найти все сообщения от iNils
  № 7  
Ответить с цитированием
iNils
Негуру
 
Аватар для iNils

администратор
Регистрация: Jan 2000
Адрес: Кёнигсберг in Moscow
Сообщений: 21,883
Записей в блоге: 7
Цитата:
Сообщение от sher83
сначала это все было запихано в мувиклип, но я специально вытащил все в рут, т.к. прочитал, что иначе onRelease работать не будет.
Глупости.

Все понял в чем проблема. Меня чего то переклинило. Картинка грузится не мгоновенно. Нужно некое время.
Ты начал загрузку, но картинка еще не успела загрузится, как ты повесил на неее обработчик события.
А когда картинка загрузилась, то она удаляет весь код который на мувик был повешен. В том числе и обработчик события.

Выход:
1. Ждать пока картинка загрузится, а потом вешать.
2. В созданном мувике создать еще один пустой. И грузить в него. А обработчик вешать на родителя.
__________________
(и)Нильс.ru | Плагины для FlashDevelop

Старый 01.09.2005, 00:47
sher83 вне форума Посмотреть профиль Отправить личное сообщение для sher83 Посетить домашнюю страницу sher83 Найти все сообщения от sher83
  № 8  
Ответить с цитированием
sher83

Регистрация: Aug 2002
Адрес: Латвия, Рига
Сообщений: 52
Изменил код на этот и картинки перестали грузиться:

for(i=1; i <= imgs_qty; i++) {
createEmptyMovieClip("target_mc"+i, _root.getNextHighestDepth());
target_mc = eval("target_mc"+i);
trace(target_mc+" created.");

createEmptyMovieClip("container_mc", _root.target_mc.getNextHighestDepth());
trace(container_mc+" created.");

mc_url = eval("t_image"+i);
loadMovie(mc_url, _root.target_mc.container_mc);
trace("image loaded");

target_mc._x = 4;
target_mc._y = +y;

y += 57;
}

Старый 01.09.2005, 00:49
sher83 вне форума Посмотреть профиль Отправить личное сообщение для sher83 Посетить домашнюю страницу sher83 Найти все сообщения от sher83
  № 9  
Ответить с цитированием
sher83

Регистрация: Aug 2002
Адрес: Латвия, Рига
Сообщений: 52
container_mc почему-то не хочет создаваться внутри target_mc.

Старый 01.09.2005, 01:16
sher83 вне форума Посмотреть профиль Отправить личное сообщение для sher83 Посетить домашнюю страницу sher83 Найти все сообщения от sher83
  № 10  
Ответить с цитированием
sher83

Регистрация: Aug 2002
Адрес: Латвия, Рига
Сообщений: 52
спасибо iNils!!! Ты был прав, надо создавать еще 1 вложенный мувиклип!!!!

Создать новую тему Ответ Часовой пояс GMT +4, время: 12:39.
Быстрый переход
  « Предыдущая тема | Следующая тема »  

Ваши права в разделе
Вы не можете создавать новые темы
Вы не можете отвечать в темах
Вы не можете прикреплять вложения
Вы не можете редактировать свои сообщения

BB коды Вкл.
Смайлы Вкл.
[IMG] код Вкл.
HTML код Выкл.


 


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


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