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

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

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

Регистрация: Aug 2005
Адрес: я из Ленинграда
Сообщений: 1,082
Отправить сообщение для Mnilionic с помощью ICQ
По умолчанию присвоить функцию к событию кнопки

на сцене есть 10 экземпляром клипа с именами mc1 по mc10.
в каждом клипе есть кнопка btn
нужно чтоб при клике по кнопке срабатывала одна и та же функция но с разными параметрами:
Код:
var total = 10;
for(var i=1; i<=total; i++){

	var mc = eval("mc"+i);

	mc.func = new link(i);

	mc.btn.onRelease = mc.func.go;
}

function fgo(){
	trace(this.i);
}
function link(ii){
	this.i = ii;
	this.go = fgo;
}

mc5.func.go();
// выдаёт 5 - то есть работает
// но при клие по кнопке - undefined :(

Старый 21.06.2007, 08:08
Double вне форума Посмотреть профиль Отправить личное сообщение для Double Найти все сообщения от Double
  № 2  
Ответить с цитированием
Double
 
Аватар для Double

Регистрация: Mar 2001
Сообщений: 1,147
Код:
fgo = function() {trace(this.i)}

total = 10;

for (i=1; i<=total; i++) {
  this["mc"+i].btn.i = i;
  this["mc"+i].btn.onRelease = fgo
}
__________________
Кто говорит, тот не знает. Кто знает, тот не говорит.

Старый 21.06.2007, 18:54
Mnilionic вне форума Посмотреть профиль Отправить личное сообщение для Mnilionic Найти все сообщения от Mnilionic
  № 3  
Ответить с цитированием
Mnilionic
 
Аватар для Mnilionic

Регистрация: Aug 2005
Адрес: я из Ленинграда
Сообщений: 1,082
Отправить сообщение для Mnilionic с помощью ICQ
Double, спасибо

А почему в моём вариента обращение this срабатывает к кнопке, а не к объекту?.

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

Регистрация: Sep 2002
Сообщений: 30,787
Потому что в AS2/AS1 привязка идет не к тому объекту, которому присвоена функция, а к тому, который её вызывает. В AS3 такого нет, поэтому там не нужны всякие Delegate и прочие костыльки.

Старый 21.06.2007, 21:11
Mnilionic вне форума Посмотреть профиль Отправить личное сообщение для Mnilionic Найти все сообщения от Mnilionic
  № 5  
Ответить с цитированием
Mnilionic
 
Аватар для Mnilionic

Регистрация: Aug 2005
Адрес: я из Ленинграда
Сообщений: 1,082
Отправить сообщение для Mnilionic с помощью ICQ
__etc, ясно.

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

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

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


 


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


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