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

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

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

Регистрация: Nov 2006
Сообщений: 39
Question Динамическое имя мувика

Подобная тема была, но так как она уже в архиве спрошу здесь.
Итак динамическое имя мувика. ТАм предлагалось 2 варианта
Код:
i=1; 
this["m"+i]._visible=false;
который у меня не работает в принципе, здесь вопрос почему это может быть
и второй
Код:
i=1; 
eval("_root.bla-bla.bla-bla.m"+i)._visible=false;
с ним ещё забавней, в одном месте он работает, а в другом нет
например в следующем коде:
Код:
var i=1
_root.kb.onPress = function ()
{   
	attachMovie("Kub", "kub"+i, i, {_x:0, _y:0});
	_root.n1 = "i: "+i;
	eval("_root.kub"+i).startDrag (true);	


_root.kb.onRelease=_root.kb.onReleaseOutside=function() {
	y=eval("_root.kub"+1);
	_root.n2 = "i: "+ i;
	eval("_root.kub"+i).stopDrag ();
	eval("_root.kub"+i)._height=eval("_root.kub"+1)._height*0.5;
	eval("_root.kub"+i)._width=eval("_root.kub"+1)._width*0.5;
	} 
	i++
}
в первой части где startDrag всё работает нормально
во второй где stopDrag и всё остальное не срабатывает
если поставить вместо i например 1 - сработает для 1-й, а с i не срабатывает, хотя i значение имеет

в первой части если вывести eval("_root.kub"+i) выводит к примеру _level0.kub3
во второй undefined что за чудеса?


Последний раз редактировалось went; 08.11.2006 в 09:24.
Старый 08.11.2006, 11:54
Dimchansky вне форума Посмотреть профиль Отправить личное сообщение для Dimchansky Посетить домашнюю страницу Dimchansky Найти все сообщения от Dimchansky
  № 2  
Ответить с цитированием
Dimchansky

Регистрация: Jul 2005
Сообщений: 225
Отправить сообщение для Dimchansky с помощью ICQ
1. По понятным причинам this["kub"+i] работать не будет. Будет работать _root["kub"+i];
2. У Вас реакция на событие onRelease определяется в рамках реакции на событие onPress (внимательно посмотрите на фигурные скобки). Может, Вам это и нужно, но разумно не поступать таким образом.

Код:
var i=1
_root.kb.onPress = function ()
{   
	attachMovie("Kub", "kub"+i, i, {_x:0, _y:0});
	_root.n1 = "i: "+i;
	_root["kub"+i].startDrag (true);	

}
_root.kb.onRelease=_root.kb.onReleaseOutside=function() {
	_root.n2 = "i: "+ i;
	_root["kub"+i].stopDrag ();
	_root["kub"+i]._height=_root["kub"+1]._height*0.5;
	_root["kub"+i]._width=_root["kub"+1]._width*0.5;
	i++
}
3. Отказывайтесь от конструкций с eval, это каменный век.
__________________
Dimchansky | Freelance


Последний раз редактировалось Dimchansky; 08.11.2006 в 12:04.
Старый 08.11.2006, 12:41
went вне форума Посмотреть профиль Отправить личное сообщение для went Найти все сообщения от went
  № 3  
Ответить с цитированием
went

Регистрация: Nov 2006
Сообщений: 39
Спасибо. С eval-ом связался ибо он работал, теперь буду делать по правильному.

Старый 08.11.2006, 14:02
etc вне форума Посмотреть профиль Найти все сообщения от etc
  № 4  
Ответить с цитированием
etc
Et cetera
 
Аватар для etc

Регистрация: Sep 2002
Сообщений: 30,784
Ну зачем вы себе усложняете жизнь выражениями _root['kub'+i], когда attachMovie возвращает ссылку на созданный мувик?

Старый 13.11.2006, 10:07
went вне форума Посмотреть профиль Отправить личное сообщение для went Найти все сообщения от went
  № 5  
Ответить с цитированием
went

Регистрация: Nov 2006
Сообщений: 39
Цитата:
Сообщение от __etc
Ну зачем вы себе усложняете жизнь выражениями _root['kub'+i], когда attachMovie возвращает ссылку на созданный мувик?
э-э... примерчик можно?

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

Регистрация: Feb 2006
Сообщений: 580
went
Код:
var main:MovieClip = this;
var mc:MovieClip;
var i:Number = 1;
//
main.kb.onPress = function() {
	mc = main.attachMovie("Kub", "kub"+i, i, {_x:0, _y:0});
	main.n1 = "i: "+i;
	mc.startDrag(true);
};
main.kb.onRelease = main.kb.onReleaseOutside=function () {
	main.n2 = "i: "+i;
	mc.stopDrag();
	mc._height = mc._height*0.5;
	mc._width = mc._width*0.5;
	i++;
};
Это распространенный прием.

Старый 13.11.2006, 13:38
etc вне форума Посмотреть профиль Найти все сообщения от etc
  № 7  
Ответить с цитированием
etc
Et cetera
 
Аватар для etc

Регистрация: Sep 2002
Сообщений: 30,784
went, примерчики в мануале по attachMovie.

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

Регистрация: Nov 2006
Сообщений: 39
Цитата:
Сообщение от pkfun
Это распространенный прием.
Спасибо. Теперь распростаню его и на себя

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

Регистрация: Feb 2006
Сообщений: 580
Я только написал пример. Основная мысль от __etc

Старый 15.11.2006, 13:39
went вне форума Посмотреть профиль Отправить личное сообщение для went Найти все сообщения от went
  № 10  
Ответить с цитированием
went

Регистрация: Nov 2006
Сообщений: 39
Цитата:
Сообщение от pkfun
Я только написал пример. Основная мысль от __etc
__etc тоже СПАСИБО

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

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

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


 


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


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