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

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

Версия для печати  Отправить по электронной почте    « Предыдущая тема | Следующая тема »  
Опции темы Опции просмотра
 
Создать новую тему  
Старый 07.10.2009, 10:32
Alex Lexcuk вне форума Посмотреть профиль Отправить личное сообщение для Alex Lexcuk Посетить домашнюю страницу Alex Lexcuk Найти все сообщения от Alex Lexcuk
  № 10  
Ответить с цитированием
Alex Lexcuk

блогер
Регистрация: Mar 2008
Адрес: Донецк_city
Сообщений: 1,094
Записей в блоге: 5
Цитата:
Сообщение от morkovka Посмотреть сообщение
Если не трудно, сбросьте, пожалуйста. В книжке про классы есть, там про все есть. Книжка Adobe Программирование ActionScript 3.0, хорошая, но без помощи профессионалов мне не разобраться:-(
http://www.murmadillo.tut.su/m/timeLineMove.rar

Документ класс док.
Расширяем класс SimpleButton, получаем DispatchUintSimBtn, при нажатии на эту расширенную кнопку шлется событие на сцену
Код AS3:
stage.dispatchEvent(new LexEvent('gotoFrame',{frame:gotoFrame}));
те. где бы кнопка не была событие пошлется все равно при ее нажатии.
теперь в поле класс SimpleButtona (в библиотеке на нарисованной кнопке правой кнопочкой пункт линкаже) можно написать Sim46_47 и создать в папке файл такого содержания

Код AS3:
package{
	public class Sim46_47 extends DispatchUintSimBtn{
		public function Sim46_47():void{
			super(47);//вызов родительского конструктора
                                             //при нажатии пошлется событие 'gotoFrame' c
                                             //параметром 47
		}
	}
}
конструкторе класса DispatchUintSimBtn есть параметр, этот параметр будет диспатчется при нажатии на кнопку.

в документ классе Doc это событие с параметром и ловим
Код AS3:
package {
	import flash.display.*;
	import flash.events.*;
	import flash.text.*;
 
	public class Doc extends MovieClip{;
 
		public function Doc(){
			addFrameScript(44,funcStop);//останов на 44 кадре
 
			//ловить свое же событие, от нажатия кнопки
			stage.addEventListener('gotoFrame',gotoFrameHandler);
 
			//просто индикатор текущего кадра, на сцену в нарисованное пле txt
			addEventListener(Event.ENTER_FRAME, enterFrameHandler);
		}
 
		private function enterFrameHandler(evt:Event):void{
			txt.text = ''+currentFrame;
		}
 
		private function funcStop() {//останов на 44 кадре
			stop();//останов на 44 кадре
		}//останов на 44 кадре
 
		private function gotoFrameHandler(evt:LexEvent):void{
			gotoAndPlay(evt.params.frame);
		}
 
	}
}
__________________
Гоночка


Последний раз редактировалось Alex Lexcuk; 07.10.2009 в 10:38.
Создать новую тему   Часовой пояс GMT +4, время: 16:51.
Быстрый переход
  « Предыдущая тема | Следующая тема »  

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

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


 


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


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