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

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

Версия для печати  Отправить по электронной почте    « Предыдущая тема | Следующая тема »  
Опции темы Опции просмотра
 
Создать новую тему Ответ
Старый 02.02.2007, 07:51
Hak вне форума Посмотреть профиль Отправить личное сообщение для Hak Найти все сообщения от Hak
  № 1  
Ответить с цитированием
Hak
[+4 07.12.07]
 
Аватар для Hak

Регистрация: Apr 2006
Сообщений: 176
Отправить сообщение для Hak с помощью ICQ
По умолчанию Как грамотно создать событие release n - ому количеству кнопок, созданных программно?

КАК СДЕЛАТЬ ТАКОЕ?
__________________
Я только учусь...

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

Регистрация: Jul 2006
Адрес: Земля>Россия>Вологда
Сообщений: 3,056
Отправить сообщение для CorC с помощью ICQ Отправить сообщение для CorC с помощью MSN Отправить сообщение для CorC с помощью Skype™
у меня есть такая функция InitButton
параметры меняющиеся:
имя, текст на кнопке, функция на onRelease, выравнивание, далее много др параметров
внутри там много всего чего то понаписано
но все работает и я на нее не жаловался еще
__________________
"We Are The Champions My Friends!" Queen

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

Регистрация: Sep 2006
Сообщений: 256
1. Написать класс кнопки + использовать в нем EventDispatcher для генерации событий. Экземплярам класса добавлять необходимые обработчики addEventListener'ом.
2. Или так:
Код:
//или любой подобный класс, а таких много.
import com.bigspaceship.utils.Delegate;

//массив кнопок.
var buttons:Array = new Array();

...
//создаем кнопки.
...

//обработчик.
function onButtonRelease(id:Number):Void {
	trace(id);
}

//назначаем onRelease.
for(var i:Number=0; i<buttons.length; i++){
	var button:MovieClip = buttons[i];
	button.onRelease = Delegate.create(this, this.onButtonRelease, i);
}
Improved Delegate (com.bigspaceship.utils.Delegate)

Старый 04.02.2007, 18:23
Hak вне форума Посмотреть профиль Отправить личное сообщение для Hak Найти все сообщения от Hak
  № 4  
Ответить с цитированием
Hak
[+4 07.12.07]
 
Аватар для Hak

Регистрация: Apr 2006
Сообщений: 176
Отправить сообщение для Hak с помощью ICQ
Lowka, честно говоря не совсем понял:-D, поясни. У меня программно создается <k> кнопок с именами btn_1, btn_2 ... btn_<k>.
__________________
Я только учусь...

Старый 12.02.2007, 15:09
Hak вне форума Посмотреть профиль Отправить личное сообщение для Hak Найти все сообщения от Hak
  № 5  
Ответить с цитированием
Hak
[+4 07.12.07]
 
Аватар для Hak

Регистрация: Apr 2006
Сообщений: 176
Отправить сообщение для Hak с помощью ICQ
у меня не получается!
__________________
Я только учусь...

Старый 12.02.2007, 15:58
Мыкыта вне форума Посмотреть профиль Отправить личное сообщение для Мыкыта Найти все сообщения от Мыкыта
  № 6  
Ответить с цитированием
Мыкыта

Регистрация: Mar 2003
Адрес: Россия, Санкт-Петербург
Сообщений: 565
в луппе прописываешь
Код:
name = "btn_"+k;
this[name].onRelease = function () {
// bla bla
}
// и т. д.

Старый 12.02.2007, 17:43
Tipon вне форума Посмотреть профиль Отправить личное сообщение для Tipon Найти все сообщения от Tipon
  № 7  
Ответить с цитированием
Tipon

Регистрация: Jan 2006
Сообщений: 18
Цитата:
Сообщение от Мыкыта
в луппе прописываешь
Код:
name = "btn_"+k;
this[name].onRelease = function () {
// bla bla
}
// и т. д.
А по подробнее про лупп, если можно?

Я так и не понял =) как быть, если надо каждой кнопке в цикле присвоить выполнение кода, отличающегося на тот же параметр k, который и определяет имя кнопоки?
Если не трудно, кто-нибуть плз напишите пример по подробнее.


Последний раз редактировалось Tipon; 12.02.2007 в 18:09.
Старый 12.02.2007, 18:38
CorC вне форума Посмотреть профиль Отправить личное сообщение для CorC Найти все сообщения от CorC
  № 8  
Ответить с цитированием
CorC
 
Аватар для CorC

Регистрация: Jul 2006
Адрес: Земля>Россия>Вологда
Сообщений: 3,056
Отправить сообщение для CorC с помощью ICQ Отправить сообщение для CorC с помощью MSN Отправить сообщение для CorC с помощью Skype™
http://flasher.ru/forum/showthread.php?t=91829
топик не про то
но смысл того что надо, и почему не работает я раскрыл...
поменять там код 10 секунд в цикле (лупе)
__________________
"We Are The Champions My Friends!" Queen

Старый 12.02.2007, 19:19
Мыкыта вне форума Посмотреть профиль Отправить личное сообщение для Мыкыта Найти все сообщения от Мыкыта
  № 9  
Ответить с цитированием
Мыкыта

Регистрация: Mar 2003
Адрес: Россия, Санкт-Петербург
Сообщений: 565
Tipon
воощем так =)) есть кнопка с именем допустим item пихуем ее в контент (тоесть в мувик)
далее можно навесить на мувик контент можно просто в тайм лайне допусти на мувик вешаем код:
Код:
onClipEvent (load) {

space = this.item._height + 2 // растояние на которые сдвигаем дубликат
i = 0
while (++i<20) // делаем 20 кнопок
{
name = "item"+i; // имя дубликата кнопки
this.item.duplicateMovieClip(name, i);
this[name]._y = space*i;
this[name].onRelease = function () { // к каждой кнопке присоединяется функция onRelease
}
}
}


Последний раз редактировалось Мыкыта; 12.02.2007 в 19:22.
Старый 12.02.2007, 19:21
CorC вне форума Посмотреть профиль Отправить личное сообщение для CorC Найти все сообщения от CorC
  № 10  
Ответить с цитированием
CorC
 
Аватар для CorC

Регистрация: Jul 2006
Адрес: Земля>Россия>Вологда
Сообщений: 3,056
Отправить сообщение для CorC с помощью ICQ Отправить сообщение для CorC с помощью MSN Отправить сообщение для CorC с помощью Skype™
и если в том релизе будет i то ничего хорошего не выйдет
__________________
"We Are The Champions My Friends!" Queen

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

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

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


 


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


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