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

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

Версия для печати  Отправить по электронной почте    « Предыдущая тема | Следующая тема »  
Опции темы Опции просмотра
 
Создать новую тему Ответ
Старый 11.09.2007, 01:47
Pow R. Toc H. вне форума Посмотреть профиль Отправить личное сообщение для Pow R. Toc H. Найти все сообщения от Pow R. Toc H.
  № 1  
Ответить с цитированием
Pow R. Toc H.

Регистрация: Nov 2006
Сообщений: 176
По умолчанию Создание State программно

Вот код приложения, функция createNewState - создаёт новое состояние:
Код:
<?xml version="1.0"?>
<!-- states\StatesAS.mxml -->
<mx:Application xmlns:mx="http://www.adobe.com/2006/mxml"
   applicationComplete="createNewState()" >

    
    <mx:Script>
        <![CDATA[
        	import mx.states.SetProperty;
        	import mx.states.State;
        public var stateMore:State;
        
        public function createNewState():void{
        	stateMore = new State();
        	stateMore.name = "More";
        	var setPr:SetProperty = new SetProperty();
        	setPr.target = 'Panel';
        	setPr.name = 'height';
        	setPr.value = 300;
        	stateMore.overrides.push(setPr);
        	states.push(stateMore);
        }

		public function panelResize():void{
			if(currentState == 'More'){
				panelResize_tr.fromState='More';
				panelResize_tr.toState='*';				
			}
			else{
				panelResize_tr.toState='More';
				panelResize_tr.fromState='*';								
			}
			currentState = currentState=='More'?'':'More';
		}

        ]]>
    </mx:Script>

    <mx:transitions>
    	<mx:Transition id="panelResize_tr" fromState="*" toState="More">
    		<mx:Parallel target="{Panel}">
    			<mx:Resize duration="200">    				
    			</mx:Resize>
    		</mx:Parallel>
    	</mx:Transition>
     </mx:transitions>
    
    <mx:Panel width="250" height="200" layout="absolute" id="Panel" click="panelResize()">
    </mx:Panel>
</mx:Application>
но по чему то не хочет реагировать.. если вместо функции createNewState использовать
Код:
<mx:states>
<mx:State name="More">    		
<mx:SetProperty target="{Panel}" name="height" value="272"/>  
</mx:State>
</mx:states>
то всё работает...

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

Регистрация: Oct 2005
Адрес: Борисоглебск
Сообщений: 1,702
Отправить сообщение для miramax с помощью ICQ Отправить сообщение для miramax с помощью AIM Отправить сообщение для miramax с помощью MSN Отправить сообщение для miramax с помощью Yahoo Отправить сообщение для miramax с помощью Skype™
Код:
<mx:Application xmlns:mx="http://www.adobe.com/2006/mxml"
   applicationComplete="createNewState()" >

    
    <mx:Script>
        <![CDATA[
        	import mx.states.SetProperty;
        	import mx.states.State;
        public var stateMore:State;
        
        public function createNewState():void{
        	stateMore = new State();
        	stateMore.name = "More";
        	var setPr:SetProperty = new SetProperty();
        	setPr.target = this.panel;
        	setPr.name = 'height';
        	setPr.value = 300;
        	stateMore.overrides.push(setPr);
        	states.push(stateMore);
        	
        }

		public function panelResize():void{
			
			if(currentState == 'More')
			{
				panelResize_tr.fromState='More';
				panelResize_tr.toState='*';				
			}
			else{
				panelResize_tr.toState='More';
				panelResize_tr.fromState='*';								
			}
		
			currentState = currentState=='More'?'':'More';
		}

        ]]>
    </mx:Script>

    <mx:transitions>
    	<mx:Transition id="panelResize_tr" fromState="*" toState="More">
    		<mx:Parallel target="{Panel}">
    			<mx:Resize duration="200">    				
    			</mx:Resize>
    		</mx:Parallel>
    	</mx:Transition>
     </mx:transitions>
    
    <mx:Panel width="250" height="200" layout="absolute" id="panel" click="panelResize()">
    </mx:Panel>
</mx:Application>
__________________
AS3 | www.FLAPS.ru | Русские флэшеры самые умные флэшеры в мире. ©

Старый 11.09.2007, 02:21
Pow R. Toc H. вне форума Посмотреть профиль Отправить личное сообщение для Pow R. Toc H. Найти все сообщения от Pow R. Toc H.
  № 3  
Ответить с цитированием
Pow R. Toc H.

Регистрация: Nov 2006
Сообщений: 176
здорово.. заработало...

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

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

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


 


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


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