Показать сообщение отдельно
Старый 28.12.2011, 19:02
Genzo вне форума Посмотреть профиль Отправить личное сообщение для Genzo Посетить домашнюю страницу Genzo Найти все сообщения от Genzo
  № 15  
Ответить с цитированием
Genzo
 
Аватар для Genzo

блогер
Регистрация: Feb 2010
Адрес: MSK
Сообщений: 859
Записей в блоге: 3
Отправить сообщение для Genzo с помощью ICQ Отправить сообщение для Genzo с помощью Skype™
alatar спасибо за помощь, решил сделать так :
Код AS3:
<?xml version="1.0" encoding="utf-8"?>
<s:ItemRenderer xmlns:fx="http://ns.adobe.com/mxml/2009" 
				xmlns:s="library://ns.adobe.com/flex/spark">
	<fx:Script>
		<![CDATA[		
			import mx.core.mx_internal;
			import mx.events.FlexEvent;
 
			private var timer:Timer;
			private var moveLeft:Boolean = true;
 
			private const PADDING:uint = 12;
			private const SPEED:uint = 4;
 
			private function normalState(event:FlexEvent):void
			{
				if(this.timer != null)
				{
					this.timer.removeEventListener(TimerEvent.TIMER , moveText);
					this.timer.stop();
					this.timer = null;
					this.labelDisplay.setStyle("paddingLeft" , PADDING);
				}
			}
 
			private function selectedState(event:FlexEvent):void
			{
				var textWidth:Number = this.labelDisplay.measuredWidth - this.labelDisplay.getStyle("paddingLeft");
				if(textWidth > this.labelDisplay.width + PADDING);
				this.timer = new Timer(50);
				this.timer.addEventListener(TimerEvent.TIMER , moveText);
				this.timer.start();			
			}
 
			private function moveText(e:TimerEvent):void
			{
				var textWidth:Number = this.labelDisplay.measuredWidth - this.labelDisplay.getStyle("paddingLeft");
				if(this.moveLeft)
				{
					this.labelDisplay.setStyle("paddingLeft" , this.labelDisplay.getStyle("paddingLeft") - SPEED);
					if(Math.abs(this.labelDisplay.getStyle("paddingLeft")) >  textWidth - this.labelDisplay.width + PADDING){
						this.moveLeft = false;
					}
				}else{
					this.labelDisplay.setStyle("paddingLeft" , this.labelDisplay.getStyle("paddingLeft") + SPEED);
					if(this.labelDisplay.getStyle("paddingLeft") >  PADDING){
						this.moveLeft = true;
					}
				}
 
			}
 
		]]>
	</fx:Script>
	<s:states> 
		<s:State name="normal" enterState="normalState(event)"/> 
		<s:State name="selected" enterState="selectedState(event)"/> 
	</s:states> 
 
 
	<s:Label id="labelDisplay"
			 left="{PADDING}" right="8" top="8" bottom="8"
			 fontSize="36" verticalCenter="0" maxDisplayedLines="1"/>
 
</s:ItemRenderer>
__________________
Gamedev != Gaming (http://twitter.com/#!/GenzoDev). Don't forget to [+] if it works.