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

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

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

Регистрация: Sep 2005
Сообщений: 7
По умолчанию Не работает функция на загруженном мувике

есть сцена, в ней создан клип mov1 и кнопка b_up

при нажатии на кнопку, в mov1 загружается другой мувик и в дальнейшем над измененным мувиком я что-либо делаю...

Код:
b_up.onRelease=function():Void {
	mov01.loadMovie("path to my movie...");
	mov01.onEnterFrame=function():Void{
		bla-bla-bla; //my code
	}
}
вот в таком случае mov01.onEnterFrame не выполняется...
если же не производить загрузку чего-либо в mov1 то mov01.onEnterFrame работает...
mov01.onLoad у меня тоже отказалось работать...

причем, если сделать вот так, то функция alph выполняется исключительно до mov01.onEnterFrame


Код:
alph = function (object):Void {
	object._alpha=0;
	object.onEnterFrame = function():Void{
		object._alpha+= 5;
		if (object._alpha>=100) {
			object._alpha = 100;
			delete (object.onEnterFrame);
		}
	}
}


b_up.onRelease=function():Void {
	mov01.loadMovie("path to my movie");
	alph(mov01);
}
объясните почему?

Старый 01.08.2006, 02:58
wvxvw вне форума Посмотреть профиль Отправить личное сообщение для wvxvw Найти все сообщения от wvxvw
  № 2  
Ответить с цитированием
wvxvw
Modus ponens
 
Аватар для wvxvw

модератор форума
Регистрация: Jul 2006
Адрес: #1=(list #1#)
Сообщений: 8,049
Записей в блоге: 38
а что такое mov01? если ты не объявил эту переменную как мувиклип, то свойства надкласа (т.е. МувиКлипа) она не унаследует (в лучшем случае в ней окажется переменная с именем "onEnterFrame" значение которой будет вычислятся функцией описаной после оператора присвоения.
onLoad - событие классов способнвх что-нибудь загружать (LoadVars, XML, MovieClipLoader), если mov01 не является экземпляром какого-нибудь из вышеперечисленных классов, то и выполнятся соответственно не будет.
Аналогично и во втором примере, если хочешь, чтобы твоя переменная унаследовала свойства какого-нибудь класса, то нужно об этом сообщить (например var mov01:MovieClip = _root.createEmptieMovieClip("my_mc", _root.getNextHighestDepth()); )
__________________
Hell is the possibility of sanity

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

Регистрация: Sep 2005
Сообщений: 7
у меня в сцене уже есть мувик у которого Instance name - mov01, в него и происходит загрузка

Старый 01.08.2006, 11:49
referi вне форума Посмотреть профиль Отправить личное сообщение для referi Найти все сообщения от referi
  № 4  
Ответить с цитированием
referi

Регистрация: Jan 2006
Сообщений: 34
тебе нужно дождаться окончания загрузки клипа

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

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

Старый 02.08.2006, 14:08
Dimonnn вне форума Посмотреть профиль Отправить личное сообщение для Dimonnn Найти все сообщения от Dimonnn
  № 6  
Ответить с цитированием
Dimonnn

Регистрация: Sep 2005
Сообщений: 7
Пасиб, все заработало сделал вот так:

Код:
pt="E:/flash/uhodyashaya/maket_ulici/7.jpg";
alph = function (object) {
	object._alpha=0;
	object.onEnterFrame = function():Void{
		object._alpha+= 5;
		if (object._alpha>=100) {
			object._alpha = 100;
			delete (object.onEnterFrame);
		}
	}
	
}

b_up.onRelease=function():Void {
	 mov01.loadMovie(pt);
         _root.onEnterFrame=function():Void {
		if (mov01.getBytesLoaded()==mov01.getBytesTotal()) {
			alph(mov01);
			delete(_root.onEnterFrame);
		}
             }

}

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

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

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


 


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


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