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

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

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

блогер
Регистрация: Sep 2009
Сообщений: 2,463
Записей в блоге: 2
По умолчанию Move transition для окна

Хочу сделать чтобы все модальные окна в приложении появлялись из левого края двигаясь по горизонтали и останавливались по центру, а при закрытии уезжали вправо. Вроде бы все просто - меняю в кастомном скине transition для state, но окно не двигается. Fade при этом работает.

Код AS3:
 <s:Transition fromState="closed" toState="normal" autoReverse="true">
			<s:Parallel target="{chrome}">
				<s:Fade duration="150"/>
				<s:Move duration="300" xFrom="-200" easer="{bounce}"/>
			</s:Parallel>
        </s:Transition>
Или это нужно анимировать не через скин? Как правильно сделать?
__________________
In Code We Trust

Старый 26.08.2012, 21:54
djyamato вне форума Посмотреть профиль Отправить личное сообщение для djyamato Посетить домашнюю страницу djyamato Найти все сообщения от djyamato
  № 2  
Ответить с цитированием
djyamato
 
Аватар для djyamato

Регистрация: Feb 2006
Сообщений: 884
Записей в блоге: 2
Отправить сообщение для djyamato с помощью ICQ Отправить сообщение для djyamato с помощью Skype™
а xTo="" указывать не нужно ?

Старый 27.08.2012, 00:00
Astraport вне форума Посмотреть профиль Отправить личное сообщение для Astraport Найти все сообщения от Astraport
  № 3  
Ответить с цитированием
Astraport
 
Аватар для Astraport

блогер
Регистрация: Sep 2009
Сообщений: 2,463
Записей в блоге: 2
Сорри, указывал конечно. Дело не в том, нужно при создании окна поместить его за пределами stage. Или прямо в скине это сделать. Вот какая практика лучше?
__________________
In Code We Trust

Старый 27.08.2012, 01:00
djyamato вне форума Посмотреть профиль Отправить личное сообщение для djyamato Посетить домашнюю страницу djyamato Найти все сообщения от djyamato
  № 4  
Ответить с цитированием
djyamato
 
Аватар для djyamato

Регистрация: Feb 2006
Сообщений: 884
Записей в блоге: 2
Отправить сообщение для djyamato с помощью ICQ Отправить сообщение для djyamato с помощью Skype™
Я бы применял эффекты к компоненту.
И лэйаутом, наверняка, можно это решить
или в лоб:
Код AS3:
<s:Application xmlns:fx="http://ns.adobe.com/mxml/2009" 
			   xmlns:s="library://ns.adobe.com/flex/spark" 
			   xmlns:mx="library://ns.adobe.com/flex/mx" 
			   minWidth="955" 
			   minHeight="600">
	<fx:Declarations>
		<s:Move id="alertMoveIn" target="{myAlert}" xFrom="{alertInitX}" xTo="{alertCenteredX}"/>
		<s:Move id="alertMoveOut" 
				target="{myAlert}" 
				xFrom="{alertCenteredX}" 
				xTo="{alertOutX}"
				effectEnd="alertMoveOut_effectEndHandler(event)"/>
	</fx:Declarations>
 
	<fx:Script>
		<![CDATA[
			import components.CustomWindow;
 
			import mx.core.UIComponent;
			import mx.events.CloseEvent;
			import mx.events.EffectEvent;
			import mx.managers.PopUpManager;
 
			[Bindable]
			protected var myAlert:UIComponent;
 
			[Bindable]
			protected var alertInitX:int;
 
			[Bindable]
			protected var alertInitY:int;
 
			[Bindable]
			protected var alertCenteredX:int;
 
			[Bindable]
			protected var alertOutX:int;
 
			protected function showAlertButton_clickHandler(event:MouseEvent):void
			{
				myAlert=new CustomWindow();
				myAlert.addEventListener(CloseEvent.CLOSE,alertCloseHandler);
				PopUpManager.addPopUp(myAlert,this,true);
				myAlert.y=(stage.stageHeight-myAlert.height)/2;
				alertCenteredX=(stage.stageWidth-myAlert.width)/2;
				alertOutX=stage.stageWidth+myAlert.width;
 
				alertInitX=-myAlert.width;
				alertInitY=(stage.stageHeight-myAlert.height)/2;
 
				alertMoveIn.play();
			}
 
			protected function alertCloseHandler(event:CloseEvent):void	
			{
				myAlert.removeEventListener(CloseEvent.CLOSE,alertCloseHandler);
				alertMoveOut.play();
			}
 
			protected function alertMoveOut_effectEndHandler(event:EffectEvent):void
			{
				PopUpManager.removePopUp(myAlert);
				trace("alert removed");
			}
 
		]]>
	</fx:Script>
	<s:Button label="show alert" id="showAlertButton" click="showAlertButton_clickHandler(event)"/>
</s:Application>
CustomWindow
Код AS3:
<s:Group xmlns:fx="http://ns.adobe.com/mxml/2009" 
		 xmlns:s="library://ns.adobe.com/flex/spark" 
		 xmlns:mx="library://ns.adobe.com/flex/mx" width="100" height="100">
	<fx:Script>
		<![CDATA[
			import mx.events.CloseEvent;
		]]>
	</fx:Script>
	<fx:Declarations>
		<!-- Place non-visual elements (e.g., services, value objects) here -->
	</fx:Declarations>
	<s:Rect width="100%" height="100%">
		<s:stroke>
			<s:SolidColorStroke color="0x000000" weight="2"/>
		</s:stroke>
		<s:fill>
			<s:SolidColor color="0xffffff"/>
		</s:fill>
	</s:Rect>
 
	<s:HGroup verticalAlign="middle" horizontalAlign="center" width="100%" height="100%">
		<s:Button label="close" click="{dispatchEvent(new CloseEvent(CloseEvent.CLOSE))}"/>
	</s:HGroup>
</s:Group>


Последний раз редактировалось djyamato; 27.08.2012 в 01:25.
Старый 27.08.2012, 14:55
Astraport вне форума Посмотреть профиль Отправить личное сообщение для Astraport Найти все сообщения от Astraport
  № 5  
Ответить с цитированием
Astraport
 
Аватар для Astraport

блогер
Регистрация: Sep 2009
Сообщений: 2,463
Записей в блоге: 2
Ну ясно. Без разницы в общем.
Ещё вопросик, а что easer эффекты в MXML вообще не имеют свойств? Ну там время затухания или амплитуда.
__________________
In Code We Trust

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

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

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


 


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


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