Показать сообщение отдельно
Старый 13.02.2011, 22:13
mikhailk вне форума Посмотреть профиль Отправить личное сообщение для mikhailk Найти все сообщения от mikhailk
  № 6  
Ответить с цитированием
mikhailk
 
Аватар для mikhailk

Регистрация: Nov 2009
Адрес: СПб
Сообщений: 2,236
У меня вот такая штука работает:

Код AS3:
package classes.interfaceElements 
{
	import flash.display.*;
	import flash.events.*;
	import flash.utils.*;
 
	public class ProgressBarShower extends Sprite
	{
		public static const PROGRESS_BAR_FINISHED:String = "progressBarFinished";
 
		public var targetObject:Sprite;
		private var progressBarMC:ProgressBarMC;
		private var timer:Timer;
		private var value:int;
		private var step:int = 0;
 
		public function ProgressBarShower(targetObject:Sprite,value:int) 
		{
			this.targetObject = targetObject;
 
			progressBarMC = new ProgressBarMC();
			progressBarMC.barScale.scaleX = 0;
			progressBarMC.x = -50;
			progressBarMC.y = -50;
 
			targetObject.addChild(progressBarMC);
 
			timer = new Timer(value/10);
			timer.addEventListener(TimerEvent.TIMER, onTimer);
			timer.start();
		}
 
		private function onTimer(e:Event) : void
		{
			step++;
			if (step > 10) 
			{
				timer.stop();
				timer.removeEventListener(TimerEvent.TIMER, onTimer);
				dispatchEvent(new Event(PROGRESS_BAR_FINISHED));
				targetObject.removeChild(progressBarMC);
			}
			else
			{
				progressBarMC.barScale.scaleX = step * 0.1;
			}
		}
	}
 
}
ProgressBarMC - это мувик в библиотеке в виде двух полосок (основание и бар). У бара инстанснэйм barScale.


Последний раз редактировалось mikhailk; 13.02.2011 в 22:15.