Más contenido relacionado Similar a Adobe Flex константин ковалев (20) Adobe Flex константин ковалев1. Adobe Flex Новая технология для создания RIA на базе Flash- платформы Константин Ковалев RIA- разработчик http://www.riapriority.com/ [email_address] 15. MXML : что проще? public class MyApp extends mx.core.Application { p rivate var myText:TextArea; p rivate var myButton:Button; public function MyApp(){ layout = "vertical" ; myText = new TextArea (); addChild(myText) ; myText.editable = false ; myText.width = 300; myText.height = 200; myButton = new Button (); addChild(myButton) ; myButton.label = "Нажми меня!" ; m yButton.addEventListener( "click" , onButtonClick); } private function onButtonClick (event:MouseEvent): void { myText.text += 'Еще раз' } } <?xml version="1.0" encoding="utf-8"?> <mx:Application xmlns:mx="http://www.adobe.com/2006/mxml" layout="vertical"> <mx:TextArea editable="false" id="myText" width="300" height="200" /> <mx:Button id="myButton" label="Нажми меня!" click="myText.text += 'Еще раз' " /> </mx:Application> VS 16. MXML : расширяемость <?xml version="1.0" encoding="utf-8"?> <!-- com.riapriority.rit2007.CityList.mxml --> <mx:ComboBox dataProvider="{cityList}" xmlns:mx="http://www.adobe.com/2006/mxml"> <mx:ArrayCollection id="cityList"> <mx:String>Москва</mx:String> <mx:String>Санкт-Петербург</mx:String> <mx:String>Новосибирск</mx:String> <mx:String>Владивосток</mx:String> </mx:ArrayCollection> </mx:ComboBox> Компонент: Приложение: <?xml version="1.0" encoding="utf-8"?> <mx:Application xmlns:mx="http://www.adobe.com/2006/mxml" xmlns:rit2007="com.riapriority.rit2007.*" layout="vertical"> <rit2007:CityList /> </mx:Application> 17. MXML : data binding <?xml version="1.0" encoding="utf-8"?> <!-- com.riapriority.rit2007.CityList.mxml --> <mx:ComboBox dataProvider="{cityList}" creationComplete= "dispatchEvent( new Event ( 'change' ))" xmlns:mx="http://www.adobe.com/2006/mxml"> <mx:Script> <![CDATA[ [Bindable (event="change")] public function get currentCity ():String { return selectedItem as String; } ]]> </mx:Script> <mx:ArrayCollection id="cityList"> <mx:String>Москва</mx:String> <mx:String>Санкт-Петербург</mx:String> <mx:String>Новосибирск</mx:String> <mx:String>Владивосток</mx:String> </mx:ArrayCollection> </mx:ComboBox> Компонент: Приложение: <?xml version="1.0" encoding="utf-8"?> <mx:Application xmlns:mx="http://www.adobe.com/2006/mxml" xmlns:rit2007="com.riapriority.rit2007.*" layout="vertical"> <rit2007:CityList id="cityList" /> <mx:Label text="{cityList.currentCity}" /> </mx:Application> 18. MXML : модульность <?xml version="1.0" encoding="utf-8"?> <!-- com.riapriority.rit2007.CityList.mxml --> <mx:ComboBox dataProvider="{cityList}" creationComplete= "dispatchEvent( new Event ( 'change' ))" xmlns:mx="http://www.adobe.com/2006/mxml" xmlns:rit2007="com.riapriority.rit2007.*"> <mx:Script> <![CDATA[ [ Bindable (event= "change" )] public function get currentCity ():String { return selectedItem as String; } ]]> </mx:Script> <rit2007:CityListData id="cityList" /> </mx:ComboBox> Компонент: Подкомпонент: <?xml version="1.0" encoding="utf-8"?> <mx:ArrayCollection xmlns:mx="http://www.adobe.com/2006/mxml"> <mx:source> <mx:String>Москва</mx:String> <mx:String>Санкт-Петербург</mx:String> <mx:String>Новосибирск</mx:String> <mx:String>Владивосток</mx:String> </mx:source> </mx:ArrayCollection> 19. MXML : события <?xml version="1.0" encoding="utf-8"?> <!-- com.riapriority.rit2007.CityList.mxml --> <mx:ComboBox dataProvider="{cityList}" creationComplete=" on Change()" change=" on Change()" xmlns:mx="http://www.adobe.com/2006/mxml" xmlns:rit2007="com.riapriority.rit2007.*"> <mx:Metadata> [Event (name="cityChange", type="flash.events.Event")] </mx:Metadata> <mx:Script><![CDATA[ private function on Change (): void { dispatchEvent(new Event ("cityChange"));} [ Bindable (event= "cityChange" )] public function get currentCity ():String { return selectedItem as String; }]]></mx:Script> <rit2007:CityListData id="cityList" /> </mx:ComboBox> Компонент: Приложение: <?xml version="1.0" encoding="utf-8"?> <mx:Application xmlns:mx="http://www.adobe.com/2006/mxml" xmlns:rit2007="com.riapriority.rit2007.*" layout="vertical"> <mx:Label id="cityLabel" text="{cityList.currentCity}" /> <rit2007:CityList id="cityList" cityChange="labelBlur.play()“ /> <mx:Blur id="labelBlur" target="{cityLabel}" blurXFrom="50“ blurXTo="0" /> </mx:Application> 20. Code behind Код: Разметка: <?xml version="1.0" encoding="utf-8"?> <LoginFormBase direction="vertical" xmlns="com.riapriority.rit2007.*" xmlns:mx="http://www.adobe.com/2006/mxml"> <mx:Form defaultButton="{submitButton}"> <mx:FormItem label="Имя:" required="true"> <mx:TextInput id="yourName" /> </mx:FormItem> <mx:FormItem label=""> <mx:Button id="submitButton" label="Подтвердить"/> </mx:FormItem> </mx:Form> </LoginFormBase> package com.riapriority.rit2007 { import flash.events.MouseEvent; import mx.containers.Box; import mx.controls.Alert; import mx.controls.Button; import mx.controls.TextInput; import mx.events.FlexEvent; import mx.utils.StringUtil; public class LoginFormBase extends Box { public var yourName:TextInput; public var submitButton:Button; public function LoginFormBase() { addEventListener(FlexEvent.CREATION_COMPLETE, onComplete); } private function onComplete (event:FlexEvent): void { submitButton.addEventListener(MouseEvent.CLICK, onSubmit); } private function onSubmit (event:MouseEvent): void { var message:String = StringUtil.substitute ( "Превед, {0}!" , yourName.text); Alert.show(message); } } }