Показать сообщение отдельно
Старый 01.10.2011, 03:44
stweet вне форума Посмотреть профиль Отправить личное сообщение для stweet Найти все сообщения от stweet
  № 3  
Ответить с цитированием
stweet
 
Аватар для stweet

Регистрация: Mar 2010
Адрес: 54.713862552265084 = 20.442724227905273
Сообщений: 449
Отправить сообщение для stweet с помощью Skype™
вы используете "ENTER_FRAME" что зависит от частоты обновления экрана.
что если так:
Код AS3:
package {
 
	import flash.display.Sprite;
	import flash.events.Event;
	import flash.events.MouseEvent;
	import flash.events.TimerEvent;
	import flash.text.TextField;
	import flash.text.TextFieldAutoSize;
	import flash.text.TextFormat;
	import flash.utils.getTimer;
	import flash.utils.Timer;
 
	public class TestMove extends Sprite {
 
		public function TestMove() {
 
			if (stage) ADDED_TO_STAGE();
			else addEventListener(Event.ADDED_TO_STAGE, ADDED_TO_STAGE);
 
			function ADDED_TO_STAGE(e:Event = null):void {
				removeEventListener(Event.ADDED_TO_STAGE, ADDED_TO_STAGE);
				// start point
 
				var xPos:Number = 100;
				var yPos:Number = 100;
 
				var tf:TextField= new TextField();
					tf.text		= "Clic me!";
					tf.autoSize = TextFieldAutoSize.LEFT;
					tf.setTextFormat(new TextFormat("Arial", 28, 0x808080));
					tf.x = xPos;
					tf.y = yPos;
					addChild(tf);
 
				var speed:Number = 10;
				var delay:Number = 10;
 
				var move:Boolean = true;
 
				var la	:Number = getTimer();
 
				var timer:Timer = new Timer(delay);
					timer.addEventListener(TimerEvent.TIMER, function (e:TimerEvent):void {
						tf.x += speed + (la - getTimer()) * .1;
						if (tf.x >= stage.stageWidth - xPos) tf.x = xPos;
						e.updateAfterEvent();
						la = getTimer();
					});
 
				stage.addEventListener(MouseEvent.MOUSE_DOWN, function(e:MouseEvent):void {
						if (move) timer.start(); else timer.stop();
						move = !move;
					});
			}
		}
	}
}
__________________
Спросишь, дурак на минуту. Если не спросишь, дурак на всю жизнь!