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

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

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

Регистрация: Nov 2008
Адрес: Moscow
Сообщений: 493
Отправить сообщение для Dr_Bra с помощью ICQ
По умолчанию ADDED_TO_STAGE

Привет, ребята не получается добавить событие для сцены
Код AS3:
stage.addEventListener(Event.ENTER_FRAME ...
для этого необходимо воспользоваться ADDED_TO_STAGE, но у меня не получается правильно это дело применить. Посмотрите, на код, плиз., подскажите, как его поправить??
Код AS3:
package
{
	import flash.text.TextField;
	import flash.display.Sprite;
	import flash.events.Event;
	import flash.events.MouseEvent;
	import flash.geom.Rectangle;
	import flash.display.Stage;
	import flash.display.StageScaleMode;
	import flash.display.StageAlign;
 
 
	public class TextScrolling extends Sprite
	{
		var dragging:Boolean = false;
		var speech:String = "НАЧАЛО, как следует из вышесказанного, экономит ребрендинг, невзирая на действия конкурентов. Медиа, на первый взгляд, концентрирует портрет потребителя, оптимизируя бюджеты. Общество потребления уравновешивает эксклюзивный имидж, осознавая социальную ответственность бизнеса. Маркетинг, анализируя результаты рекламной кампании, специфицирует популярный как следует из вышесказанного, экономит ребрендинг, невзирая на действия конкурентов. Медиа, на первый взгляд, концентрирует портрет потребителя, оптимизируя бюджеты. Общество потребления уравновешивает эксклюзивный имидж, осознавая социальную ответственность бизнеса. Маркетинг, анализируя результаты рекламной кампании, специфицирует популярный как следует из вышесказанного, экономит ребрендинг, невзирая на действия конкурентов. Медиа, на первый взгляд, концентрирует портрет потребителя, оптимизируя бюджеты. Общество потребления уравновешивает эксклюзивный имидж, осознавая социальную ответственность бизнеса. Маркетинг, анализируя результаты рекламной кампании, специфицирует популярный как следует из вышесказанного, экономит ребрендинг, невзирая на действия конкурентов. Медиа, на первый взгляд, концентрирует портрет потребителя, оптимизируя бюджеты. Общество потребления уравновешивает эксклюзивный имидж, осознавая социальную ответственность бизнеса. Маркетинг, анализируя результаты рекламной кампании, специфицирует популярный как следует из вышесказанного, экономит ребрендинг, невзирая на действия конкурентов. Медиа, на первый взгляд, концентрирует портрет потребителя, оптимизируя бюджеты. Общество потребления уравновешивает эксклюзивный имидж, осознавая социальную ответственность бизнеса. Маркетинг, анализируя результаты рекламной кампании, специфицирует популярный ВСЕ!!!.";
 
 
		public function TextScrolling(tSpeech:TextField, bScrollUp:Sprite, bScrollDown:Sprite, dScrollDrag:Sprite, skrollHeight:Sprite)
		{
			tSpeech.text = speech; // Передаешь параметр из кадра в клас
			tSpeech.multiline = true;
			tSpeech.wordWrap = true;
 
			bScrollUp.addEventListener(MouseEvent.CLICK, upScrollText);
			function upScrollText(evt:MouseEvent):void
			{
				trace(tSpeech.scrollV);
				tSpeech.scrollV -= 1;
			}
 
			bScrollDown.addEventListener(MouseEvent.CLICK, downScrollText);
			function downScrollText(evt:MouseEvent):void
			{
				trace(tSpeech.scrollV);
				tSpeech.scrollV += 1;
			}
 
			var bounds:Rectangle = new Rectangle(dScrollDrag.x, dScrollDrag.y, 0, skrollHeight.height); //260 - это длинна skrollHeight
 
			dScrollDrag.addEventListener(MouseEvent.MOUSE_DOWN, dragScroll);
			function dragScroll(evt:MouseEvent):void
			{
				dScrollDrag.startDrag(false, bounds);
				dragging = true;
			}
 
			stage.addEventListener(MouseEvent.MOUSE_UP, dropScroll);
			function dropScroll(evt:MouseEvent):void
			{
				dScrollDrag.stopDrag();
				dragging = false;
			}
 
			stage.addEventListener(Event.ENTER_FRAME, chackSlider);
			function chackSlider(evt:Event):void
			{
				if(dragging)
				{
					//trace("scroll");
					tSpeech.scrollV = Math.round((dScrollDrag.y - bounds.y)*tSpeech.maxScrollV/90);
				}
			}
			tSpeech.addEventListener(Event.SCROLL, speechScrolled);
			function speechScrolled(evt:Event):void
			{
				dScrollDrag.y = bounds.y + (tSpeech.scrollV*skrollHeight.height/tSpeech.maxScrollV);
			}
			tSpeech.mouseWheelEnabled = true;
		}
 
//-------------------------------------------------------------------------------
 
		public function addStage():void 
		{
		if (stage) init();
		else addEventListener(Event.ADDED_TO_STAGE, init);
		}
 
		private function init(e:Event = null):void 
		{
			removeEventListener(Event.ADDED_TO_STAGE, init);
			stage.align = StageAlign.TOP_LEFT;
           	stage.scaleMode = StageScaleMode.NO_SCALE;
		}
 
//-------------------------------------------------------------------------------
	}
}

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

модератор форума
Регистрация: Sep 2003
Адрес: Москва
Сообщений: 4,630
Записей в блоге: 20
Код AS3:
package
{
import flash.display.Sprite;
import flash.events.Event;
 
public class TextScrolling extends Sprite
{
 
	public function TextScrolling()
	{
		if (stage) init();
		else addEventListener(Event.ADDED_TO_STAGE, init);
	}
 
	private function init(e:Event = null):void 
	{
		removeEventListener(Event.ADDED_TO_STAGE, init);
		stage.align = StageAlign.TOP_LEFT;
       	stage.scaleMode = StageScaleMode.NO_SCALE;
	}
 
}
}
__________________
Воспитан в TimeZero. Работаю в Mail.ru.

Старый 24.02.2010, 14:55
Dr_Bra вне форума Посмотреть профиль Отправить личное сообщение для Dr_Bra Посетить домашнюю страницу Dr_Bra Найти все сообщения от Dr_Bra
  № 3  
Ответить с цитированием
Dr_Bra
 
Аватар для Dr_Bra

Регистрация: Nov 2008
Адрес: Moscow
Сообщений: 493
Отправить сообщение для Dr_Bra с помощью ICQ
а весь остальной код можно вписать в функцию TextScrolling? Просто самая проблема - то и была, в том, что не смог правильно расположить этот кусок скрипта, заключенный в //--------------------- эти рамки

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

модератор форума
Регистрация: Jan 2006
Адрес: Бердск, НСО
Сообщений: 6,445
НЕ НАДО в конструктор засовывать хендлеры! Все функции должны находиться в теле класса. А вот листенер ADDED_TO_STAGE надо вешать в конструкторе, а не во внешней ф-ии, которая никогда не будет вызвана. Т.е. то что у тебя в теле public function addStage() - должно быть в конструкторе))
__________________
Reality.getBounds(this);

Старый 24.02.2010, 15:14
Dr_Bra вне форума Посмотреть профиль Отправить личное сообщение для Dr_Bra Посетить домашнюю страницу Dr_Bra Найти все сообщения от Dr_Bra
  № 5  
Ответить с цитированием
Dr_Bra
 
Аватар для Dr_Bra

Регистрация: Nov 2008
Адрес: Moscow
Сообщений: 493
Отправить сообщение для Dr_Bra с помощью ICQ
Цитата:
Сообщение от Wolsh Посмотреть сообщение
НЕ НАДО в конструктор засовывать хендлеры! Все функции должны находиться в теле класса. А вот листенер ADDED_TO_STAGE надо вешать в конструкторе, а не во внешней ф-ии, которая никогда не будет вызвана. Т.е. то что у тебя в теле public function addStage() - должно быть в конструкторе))
значит вункцию addStage() помещаем внутрь конструктора TextScrolling(), а те функции что сейчас содержит TextScrolling() выносим ??

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

Теги
ADDED_TO_STAGE , событие сцены , сцена

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

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


 


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


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