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

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

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

Регистрация: Jun 2006
Сообщений: 5
По умолчанию Как добавить одинаковый код к разным клипам?

Есть клипы, одинаковые по свойствам, разные по "изобразительному ряду". Как то не красиво получается копировать, вставлять этот код в каждый клип.
Я пробовал создавать массив клипов и в цикле добавлять им ф-ции реакции на события и свойства. Но наткнулся на проблему: внутри этих клипов есть кнопки и другие клипы, так вот я в этом цикл не могу получить доступ к внутренним кнопкам и клипам.
Код:
arr= new Array(m1, m2, m3);
for(i=0;i<arr.length;i++)
{
  arr[i].btInside.onPress = function() {
      _root.Func(); // работает
      arr[i].btInside.onPress = function () {
          arr[i].mInside.gotoAndPlay(2); //не работает
      }
  }
}
я пробовал и через new MovieClip() добавлять к внутренним кнопкам функции реакции на события (которые должны управлять внутренними клипами) - не работает
Код:
cMenu= function() {
	this.btInside.onPress = function () {
		TRACE("press"); // работает
		this.mInside.gotoAndPlay(2); // не работает
             }
}
....
cMenu.prototype = new MovieClip();
Object.registerClass("mMenu", cMenu);
как быть подскажите.

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

Регистрация: Sep 2002
Сообщений: 30,787
а ты проверь, mInside вообще существует и учти, что this в onPress ссылается на кнопку btInside, а не на мувик, который содержит эту кнопку.
Проще говоря, проверь области видимости.

Старый 13.06.2006, 13:55
r6t вне форума Посмотреть профиль Отправить личное сообщение для r6t Найти все сообщения от r6t
  № 3  
Ответить с цитированием
r6t

Регистрация: Jun 2006
Сообщений: 5
Цитата:
в onPress ссылается на кнопку btInside, а не на мувик, который содержит эту кнопку.
Это я уже выяснил опытным путем.
mInside точно есть.
то есть по идее 1 вариант должен работать?

Старый 13.06.2006, 14:05
Madasan вне форума Посмотреть профиль Отправить личное сообщение для Madasan Найти все сообщения от Madasan
  № 4  
Ответить с цитированием
Madasan
 
Аватар для Madasan

Регистрация: Jun 2005
Адрес: в Питере
Сообщений: 981
Код:
arr = new Array(m1, m2, m3);
for (i=0; i<arr.length; i++) {
         arr[i].btInside.target=arr[i].mInside
	arr[i].btInside.onPress = function() {
		this.target.gotoAndPlay(2);
		//работает :)
	};
}
__________________
Делай всё быстро, но не торопись!.._/*o|o*\_.

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

Регистрация: Sep 2002
Сообщений: 30,787
Код:
arr= new Array(m1, m2, m3);
for(i=0;i<arr.length;i++)
{
  arr[i].btInside.onPress = function() {
      arr[i].btInside.onPress = function () {
          this._parent.mInside.gotoAndPlay(2); // работает
      }
  }
}

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

Регистрация: Jun 2006
Сообщений: 5
Спасибо!

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

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

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


 


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


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