版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
FlexAdobe 第一 Flex是如何工作Flex第一 构建并运行Flex应用程Flex是一个提供开发设计和运行支持的架构,它可以使开发人员创建利用Adobe®applications/RIAFlex应用程序的典型步骤如下(通常是这样SWFFlashPlayerFlexFlexAdobe®Flex2framework包含了创建RIA所需要的所有组件,它们是:用于应用程序持的数据绑定、数据格式化、以及有效值验证;事件驱动的开发模式。Flexframework被包FlexMXML文件,它被作为该程序的主文件。MXML现,类似于JavaScriptActionScriptMXML文件中直接进行ActionScriptMXML文件中。fontFamily属性,你可以使用它来进行字体的设置。样式的属性通常有四种方法来进行控制:通过主题(theme)CSSMXML文件中的样一些组件被使用来进行数据显示(comboboxdatagrid)的工作。同时,你还可以XMLFlexFlexSWFFlashPlayer下运行。当一个源代码被ActionScript类(Flex精髓的地方之一,即提供从Flex应用程序并不需要服务器端所提供的支持。因此,你可以在你的本地计算Web服务的HTML页面中发布给你的用户。FlexAdobe®FlexDataServices2、ColdFusionFlashRemotingServiceJavaJ2EEServiceB/S结构的网络应用程\h<mx:TextAreatext="SayhellotoFlex!"<mx:Buttonlabel="Close"XML已经很熟悉了,就能一眼识别出这个例子的格式。MXML代码的头两Flex应用程序所有的具体内容都被放在<mx:Application>标签对中。同时,你还可以在FlexTextArea和Buttontextlabel属性。MXMLmxFlex的设计命名空间。第二 连接数Flex应用程序中对数据的操作最重要的事情是:Flex应用程序并不直接与一个数据库进行连接。因此,Adobe®FlexBuilder2没有提供直接连接数据的工具。你可以MXMLActionScript代码来操作和管理数据。Flex中,你可以使用几种方法去操纵和管理数据,它们大多数相关的内容已经超出XML结构的数据进行连接。Flex应用程序并不直接与一个数据库进行连接,所以你需要使用某种类型的服务HTTPService组件从PHP所产生的一个XMLFlex程序中使用到的数据。在与PHP的应用中,你将MySQLPHPMySQL数据库并生成XML这些步骤同样适合于在其它工作平台上生成的数据(如ASP.NETJSP等PHPXMLHTTPService组件来请求获取数据,\h\hHTTPServiceIDIDURL或者 dataProvider属性中(在波浪形的括号里,它包含<name>Mobile<name>CarFlexHTTPService中向某个URL发送一个请求: \h creationComplete方法添加到应用程序标签里后,数据会在运行时进行加载并交HTTPService第三节FlashPlayerFlashPlayer中运行的应用程序,只有在满足如下条(proxyServicesFlex应用程序提供了一个完整的代理管理系统。同时,你还可以通过使用一种web脚本语言,如ColdFusion、JSP、PHPASP来创建一个简单的代理服务。crossdomain.xml(跨域策略/cross-domainpolicy)Web服务器上。crossdomain.xml文件允许位于其它域中的SWF文件对数据源的访问。第四节FlexFlex应用程序的界面布局,就象如下所示:\h<mx:Panellayout="absolute"width="80%"<mx:TextAreatext="SayhellotoFlex!"top="10"bottom="70"left="10"<mx:Buttonlabel="Close"right="30"如果样式/style的属性值没有被指定,它们将由整个程序中运行的主题/theme来进行控\hTextArea{font-size:36px;font-weight:<mx:Panellayout="absolute"width="80%"height="80%"x="122"<mx:TextAreatext="SayhellotoFlex!"top="10"bottom="70"left="10"<mx:Buttonlabel="Close"right="30"通过明确地为TextArea们前面所提到过的,你还可以通过修改主题或应用新主题、使用一个外部CSS文件、或者第五 事件和行为的使HTML应用程序的原理是由客户端发出请求,并从服务器端得到反应。与之不相同的是,Flex应用程序是基于事件的/event-based。举个例子,当用户单击一个按钮时,便会触ID值,如下所示:<mx:Panelid="myPanel"layout="absolute"width="80%"height="80%"x="122"随后你就可以将行为/behavior<mx:Buttonlabel="Close"right="30"bottom="40"ActionScript功能函数\hpublicfunctionclose():void{myPanel.visible=false;<mx:Panelid="myPanel"layout="absolute"width="80%"height="80%"x="122"<mx:TextAreatext="SayhellotoFlex!"top="10"bottom="70"left="10"right="30"<mx:Buttonlabel="Close"right="30"bottom="40"click="close();"ActionScriptMXML文件里的<mx:Script>为了从MXML文件中更好地分离出ActionScriptFlexvisiblefalse因而不可见。你还可以通过<mx:Fade<mx:Panelid="myPanel"layout="absolute"width="80%"第六 在应用程序中添加多态页FlexViewStack组件、创建使用视图状态方式、ViewStackMXML文件方式,取决于你想从一个页面到Flex程序的构架。第七节FlexFlex应用程序吧。FlexBuilder通过使用新项目向导/NewFlexProjectWizardFlex(File>New>ProjectFlexMXMLMXML文件的基本元素(上述例子中的头两行代码(AdobeFlex2LanguageReference)去第二 Flex2应用程序开发入FlexFlex基础理论的相关教程。FlexFlexRIAs的设计产品。RIAsweb应用程序带来了快速响应并且内容丰富的桌面软件,以满足更有效力的用户体验。FlexAdobe®Flash®Player9,允许开发人员无缝地扩FlexFlex产品系列包括了进行设计、开发、发布整套RIAAdobe®Flex™2Adobe®Flex™Builder™Adobe®Flex™DataServicesAdobe®Flex™ChartingFlashPlayerFlexFlashPlayer9运行时环境去执行客户端的逻辑,渲染图形、播放动画、声音以及视频。FlashPlayer9提供了对高性能ActionScript3.0的支持,一如即往地展示了它极具革新技术的表达力。FlashPlayer为开发人员提供了一个设计用户界面的平台,无论是客户端还是客户计算机上的表现层/presentation-tierFlashPlayer能够在所有主流的操作系统和浏览器上运行,FlashPlayer9Flex应用程序可以与浏览器中所显示的JavaScript或Ajax或JavaScript库一起协同工作。FlexSoftwareDevelopmentKitFlex系列产品中的核心是FlexSoftwareDevelopmentKitSDK)Flex2SDK是技术实Flex系列产品来创建应用程序。Flex2SDK包Flex实用程序。FlexSDKFlex构架类库的源代码,使你可以学习这些类的代码并FlexSDKFlexBuilderFlexDataFlexMXMLActionScript(译者注:简而言这,MXML是用来进行用户界面布局设计的标签语言,ActionScriptFlashPlayer)FlexBuilderFlexBuilderFlexSDKFlexDataServicesFlashPlayer来开发应用程序的(IDE程序模型、FlexFlexBuilder可以提高开发小组中所有成员的生产FlexBuilder是建立在Eclipse工作平台上的(一种对于开发工具的开源平台)。因此,FlexBuilderEclipse的插件来进行安装,并且能够从EclipseFlexBuilder支持可视化的设计视图,它可以使开发人员或者设计人员去布Flex组件,定制它们的外观,以及如何与用户进行互动。FlexDataServicesFlexDataServicesFlex2SDK的功能性。FlexDataServicesservletFlexDataServicesweb应用程序。FlexDataServices能够简化操作服务器上数据的编程模式。FlexChartingFlexFlex的构架,增加了对大多数常用图表类型的支持,包括条形、FlexFlexRPCHTTPService(HTTPGET或POST请求)WebService(SOAP。FlexDataServicesRPCAMFRemoteObjects。这样,Java(JavaBeans,EJBs,POJOs)。同时,FlexDataServices/proxyFlexBuilderFlexBuilderFlex打开开发界面模式,你将看到代码编辑器,它包括了导航栏/NavigatorviewFlexBuilder为代码提示/内容协助/ContentAssist(译者注:内容协助是其英文的直译,不太好,所以根出完整的提示。请键入Control+Space以打开代码提示。FlexBuilderFlexFlexcanvas、所支持的组件/ComponentsFlex属性栏/Propertiesviews。Flex每当项目资源作出改动后,FlexBuilderFlexActionScript3.0第三章FlexFlex第一 创建一个Flex应用程Flex创建一个应用程序时,你使用组件(容器/containers和控件/controls)来描述用户的操作界面。例如,容器可以是一个用来进行数据输入的表格容器,如一个盒框/Box或一ComboBox控件:FlexMVC为了增强系统的复用性和可维护性,应该采用具有良好体系架构的模型,即Controller(MVCwebFlexSWFHTML页面中。webJRun、ColdFusionPHP,它们可以动态地生成页面。在这J2EEservlet容器。向一个J2EEservlet容器发出请求,如JRun、TomcatWebSphereFlexDataServices。MXML你可以将应用程序发布成一个编译好的SWFFlexDataServices的话,\h\h第二 Flex编程模FlexFlex类库、MXMLActionScriptMXML和ActionScriptFlexMXML和ActionScript素,使用ActionScript去定义客户端的逻辑并进行控制。ActionScriptFlexTextInputTextArea控件中。<?xmlxml标签必须位于第一行<mx:Application\h<mx:Buttonid="myButton"label="CopyText"MXML中直接插入ActionScript代码。尽管这种技术只需要一两行ActionScript代码,但是对于更为复杂的逻辑实现,你就需要在<mx:Script>块中定义<?xmlxml标签必须位于第一行<mx:Application\h//ActionScript功能函数privatefunctionduplicate():void{<mx:Buttonid="myButton"label="CopyText"MXML代码与ActionScript号TextArea控件与TextInput控件的文本属性联系起来。当用户在TextInputTextArea控件中去。<?xml<!--?xmltagmuststartinline1column1--<!--MXMLrootelementtag.--<mx:Application\h<!--Flexcontrolsexistinacontainer.DefineaPanelcontainer.--<!--TextInputcontrolforuserinput.--web服务器操作的错误事件的监听器://具体功能实现<mx:operationname="getFoo"视图状态/ViewstateFlexMXML组件被称之为数据服务器组件/dataservicecomponents。MXML包含WebService提供对使用SOAPwebHTTPService提供对返回数据的HTTPURLsRemoteObjectAML协议提供对Java对象(JavaBeansEJBs、POJOs)FlexDataServicesMacromediaColdFusionMX7.0.2.FlashFlexMacromediaFlashProfessional8程序有所不同,即使两者都会最终被编译成SWFFlashProfessional/Timeline,动画帧/,图层/layersFlex中则抛弃了这些内容,转而使MXML标签来设计用户界面组件和连接数据源。FlashFlexFlash仍然是一个非常强大的工具,用来SWCFlex中。第三节FlexDataServicesFlexDataServices来开发应用程序时,就能体会该数据服务架构的强大功能。FlexDataServicesFlexDataServices在Java应用服务器上或Java容器中执行,提供如下列所示的强大功FlexFlex数据管理服务/DataManagementService可以让你开发出使用分布式数据的应用程RPC服务都是基于低层的消息构造而建立的,如下图所示:消息构造/messaginginfrastructureFlex应用程序连接消息目的地,发送消息,以如JavaMessageService(JMS)Flex客户API所组成。FlexFlex中,不再仅仅是出现一些简单的数据表格,你可以使用各种各样的图表形式区域形图表/Area气泡形图表/Bubble烛形图表/Candlestick柱形图表/Column高低开合形图表/HighLowOpenClose饼形图表/Pie标绘形图表/PlotCartesianChart控件来创建定制的图表。dataProvider或基于列表的数据提供器/dataprovider,类似于一维数组。API。API是类执行的一套方法和属性,Flex组件和数据之间创建了一个抽象的层次。第五 使用MXML是一种XML语言,你可以使用它去布置AdobeFlex应用程序的用户界面。你MXMLHTML很类似,然而,MXML更为结构化,并提供更为SWFFlashPlayer进行渲染,它提供比HTML程序更为丰富的和动态World即<mx:Panel>标签和<mx:Label>标签。<mx:Application>是所有Fles应用程序的根标签。的内容区域。<mx:Label>Label控件用来显示文本。<?xml\h<mx:Paneltitle="MyApplication"paddingTop="10"paddingBottom="10"paddingLeft="10"paddingRight="10">SWF文件,结果如下所示:MXMLActionScriptAdobeActionScriptFlex应用程序的。类库包括了组件(容器和控Flex应用程序。MXML标签与ActionScript类或类的属性相对应。FlexMXML标签并编译成相应SWF文件。举个例子,FlexActionScript按钮类/Buttonclass来定义按钮控件。在MXMLMXML语句来创建一个按钮控件:<mx:Buttonlabel="Submit"MXMLlabel属性值。MXML相关的技术标准MXM相关的技术标准有:事件模型标准。Flex事件模型是文档对象模型/DocumentObjectModel(DOM)第三级事件的一个子集,该模型是由WorldWideWebConsortium(W3C)起草制定。Flex提供与服务器交互的MXML标签,遵循了Web服务描述语言/WebProtocol(SOAP)和超文本传送协议/HypertextTransferProtocol(HTTP。JavaFlex提供了与服务器端Java对象交互的MXML标签,包括plainoldJavaPJOJaaBansJaaBeas(EJBsHTTPFlexMXML标签去支持标准的HTTPGET和POSTMXMLW3CCascadingStyleSheets(CSS)第六 使用AdobeFlexActionScript去扩展应用程序的功能性。ActionScriptMXML更为低层的、更细致的、更为强大的功能。ActionScriptAdobeFlashPlayercoreJavaScript非常类似。ActionScript3.0的特性完全实现了ECMAScriptforXML(E4X)。MXMLFlex中使用system_classes目录结构中的全局ActionScriptFlex应用程序的逻辑实现是由ActionScript类,MXML文件,SWF文件,外部组件共FlashPlayer下载SWF文件并在客户端机器上进行运行。子文件变换成一个单独的ActionScriptMXML文件中导入ActionScriptSWF文件中。FlexActionScriptMXML混合在一起。packagepublicclassMyButtonextendsButton{publicfunctionMyButton(){myControlsFlex应用程序中引用你定制的按钮控件,MyApp.mxml文件里,就象这样:<mx:Application\hcmp命名空间,用它来放置你定制的组件,然后使用该命名空间MXML标签对组件进行引用。第四章Flex第一节本节将向你展示如何使用AdobeFlexBuilderFlex应用程序。其FlexBuilder项目的概念。在FlexBuilder中,所有的程序都被包含在项目/projects里。MXML组件文件、ActionScript文件等等。其主要操作步骤有:FlexBuilderFileNewFlexProject,出现新项目向导/NewFlexProjectwizard。Locationoption被选定。默认的目录是C:\DocumentsandSettings\your_user_name\MyDocuments\FlexBuilder2。FlexBuilderLessons文件夹。点击完成/Finish。FlexBuilder创建好新的项目并在导航视图中进行显示。SWF文件的输出目录,以及主程Lessons.mxml。确定自动构造选项/automaticbuildoption是打开的,选择SelectProject>Build\h在这一节中,你学习了在FlexBuilder中如何创建一个项目,以及如何编译和运用一个Flex应用程序。第二节FlexHTTPservice来实现与ColdFusion文件的交MySQLXMLFlex应用程序。blog阅读器。你使用了被称之为HTTPService的RPCserviceRSSLabel、DataGrid、TextArea和LinkButton控件上。FlashPlayer中运行的应用程序,只有在满足如下webcrossdomain.xml(跨域策略)文件。blogLessonsFile>New>MXMLApplication并创建一个BlogReader.mxml的文件。将BlogReader.mxmlTitle:BlogReaderWidth:475Height:X:选择DataGrid控件并设置相应属性:Id:dgPostsX:X:Label:ReadFullPostX:20SourcebuttonBlogReader.mxml文件MXML代码:\h<mx:Panelx="10"y="10"width="475"height="400"layout="absolute"title="BlogReader"><mx:DataGridx="20"y="20"id="dgPosts"<mx:LinkButtonx="20"y="225"label="ReadFull保存文件,完成编译后运行。一个浏览器窗口将打开,如下所示。到这一步,应用程序还没有显示任何blogHTTPServiceRPCblogblog\h/go/mchotinblog。你HTTPServiceblog的XMLHTTPGET或POST请求,并获取\huseProxy属性表明你并不打算在服务器上使用代理。因为Matt'sblog上面有crossdomain.xmlFlashPlayer可以访问该服务器上的远程数据。URL发送请求。 \h URLHTTPGETPOSTHTTP回应。在本例中,RSSfeed将返回XML数据。lastResult对象的结构反映了XML文档的结构。otherchildnodesofotherchildnodesof\h\huseProxy="false"/><mx:Panelx="10"y="10"width="475"height="400"layout="absolute"<mx:DataGridx="20"y="20"id="dgPosts"<mx:LinkButtonx="20"y="225"label="ReadFull组装DataGrid控件 DataGrid中也是重复的。在第一个<mx:DataGridColumn>headerTexttitle的子结点中包含了所需的信息。width<mx:DataGridx="20"y="20"id="dgPosts"width="400"的头几行内容。在XMLdescription的字<mx:TextAreax="20"y="175"width="400"dgPostsdescriptionhtmlTextHTML格式的文本。TextArea控件中。RSS他们有兴趣的话。RSS供给器没有提供的信息,可以通过连接到各个贴子的URLs来实现。XMLitemlink的字段中。你可以创建一个动态连接来显示在DataGrid<mx:LinkButtonx="20"y="225"label="ReadFullLinkButton控件时被调用。navigateToURL()URL传来的文档。HTTPServiceRPCservice组件从RSS供给器中获取数Label,DataGrid,TextAreaLinkButton控件上。第三节(laout="absolute"TextInput文本框,你可以将控件锚Flex中,所有的约束都是被设置为与容器的相对距离,它们不可能被设置为相对于xy坐标,而不是在容器中拖拉组件。用程序。默认地,FlexBuilderApplication标签中的布局属性设置为绝对方式。Layout.mxmlSetAsDefault在MXML编辑器的设计模式中,将Label控件和TextInput>FlexCommonandtheLayoutcategoriesofproperties如果你看到的是属性表格而不是预览视图,请点击视图工具条中的标准视图按钮在布局中选择Label控件,并在属性项中进行相应的设置:Text:EmailX:在布局中选择TextInputTextInput属性:X:90\h<mx:Labelx="20"y="60"<mx:Labelx="20"y="90"<mx:TextAreax="90"y="90"width="300"<mx:Buttonx="330"y="150"TextInputTextArea控件也会被拦住一部分。TextInput控件(用来输入电子邮件地址的。Flex属性视图中,确保Layoutcategoryofproperties是展开的。Layoutcategory中包TextInput控件定义布局约束,在视图中选择左/Left:Right:Bottom:拖拉浏览器窗体的边缘使其更大或更小。举个例子,如果你使窗体更狭窄,Send按钮会向左边移动,同时TextInputTextArea文本框会变得更加狭窄。如果你使浏览器窗体更加宽大,Send按钮会向右边移动,TextInputTextArea文本框第四节Flex中,控件是由数据提供器来进行组装的,LessonsFileNewMXMLApplication并创建一个名ListControl.mxml的文件。将ListControl.mxml文件设计为被编译的默认文件,并在关联菜单中选择SetAsDefaultApplicationfromthecontextmenu。Title:RateCustomerServiceWidth:350Height:X:ID:cbxRatingX:20Label:SendX:140\h<mx:Panelx="10"y="10"width="350"height="200"layout="absolute"title="RateCustomerService"><mx:ComboBoxx="20"y="20"<mx:Buttonx="140"y="20"在本例中,ComboBox控件(cbxRating.value)value<mx:Labelx="20"y="120"text="{cbxRating.value}"波浪括号({})ComboBox控件的数值属性,cbxRating.value绑定Label控件的文本属性上。换而言之,LableComboBox控件中的所使用一个对象组件数据来装载ComboBox控件。在<mx:Object>label属性,它包含了在ComboBox<mx:Objectlabel="Satisfied"<mx:Objectlabel="Neutral"第五节当你开发AdobeFlex应用程序时,事件处理/eventhandling是最基本而且最重要的任务web服务器调用的返回而产生。事件还可以由一个组件的生命周期发生变化时你可以使用事件监听器eventlisteners来对某个事件作出反应。事件监听器是你所编写LessonsFileNewMXMLApplication并创建一个名Events.mxml的文件。将Events.mxml设置为被编译的默认文件,并在关联菜单中选择SetAsDefaultTitle:CurrencyConverterWidth:450Height:X:LabelTextInput控件和一个按钮控件到面板容器Label控件,将它的文本属性设置为PriceinDollarsID:btnConvertLabel:ConverttoYenLabel控件(TextInput控件下)并进行相应的设置:lblResultsid\h<mx:Panelx="20"y="20"width="450"height="150"layout="absolute"title="CurrencyConverter"><mx:Labelx="25"y="37"text="Pricein<mx:Labelx="120"y="65"<mx:Buttonx="290"y="35"label="ConverttoYen"输入<mx:Script>Enter键在代码中插入标publicfunctionconvertCurrency():void{varrate:Number=120;varprice:Number=Number(txtPrice.text);if(isNaN(price)){lblResults.text="Pleaseenteravalid}elseprice=price*lblResults.text="PriceinYen:"+MXML注册监听器的一种方法是在<mx:Button>click的属性值。ActionScript去注册监听器。在设计模式下,选择按钮控件并在属性视图中的OnClick文本框中输入C(你还可以使用ActionScript将监听器与指定的事件相关联,如鼠标点击。每当事件发生convertCurrency函数中声明了e的事件类型对象。在<mx:Script>convertCurrency函数前输入随后的代码:publicfunctioncreateListener():void{publicfunctioncreateListener():void{btnConvert.addEventListener(MouseEvent.CLICK,convertCurrency);publicfunctionconvertCurrency(e:Event):void{varrate:Number=120;varprice:Number=Number(txtPrice.text);if(isNaN(price)){lblResults.text="Pleaseenteravalid}elseprice=price*lblResults.text="PriceinYen:"+\hlayout="absolute"creationComplete="createListener();">MXMLclick属性来进行关联。在第二种方法中,你使用ActionScript功能函数来进行关联。第六 使用行AdobeFlex行为使你可以为应用程序添加动画和运动,来对用户和编程活动作出反应。FlexMXML去创建LessonsFile>New>MXMLApplicationBehaviors.mxmlSetAsDefault Height:X:ID:myButtonLabel:ViewX:40在属性视图中,点击工具条中的分类视图/CategoryView查看属性,然后找到效果分类/Effectscategory。IDmouseUpEffect触发器赋波浪括号()是必须的,因为效果是使用数据绑定来分配给它们的触发器的。Flex事件去调用效果。这样就可以使同一种效果为不TextArea控件播放淡1.在设计模式中,在查看/ViewLabel控件,并设置相应的属性:ID:myLabelText:48151623X:<mx:Blurid="numbersBlur"<mx:Blurid="numbersBlur"target="{myLabel}"blurYFrom="10.0"blurYTo="0.0"blurXFrom="10.0"blurXTo="0.0"<mx:Buttonid="myButton"x="40"y="60"label="View"mouseUpEffect="{buttonGlow}"numbersBlurmyLabellabel而非<mx:Labelid="myLabel"x="40"y="100"text="4815162342"visible="false"<mx:Buttonid="myButton"x="40"y="60"label="View"mouseUpEffect="{buttonGlow}"click="numbersBlur.play();myLabel.visible=true;"/>当用户点击按钮时,绿色渐变效果开始播放,Label控件变得可见。Behaviors.mxml文件中输入如下代码:\h<mx:Glowid="buttonGlow"color="0x99FF66"alphaFrom="1.0"alphaTo="0.3"<mx:Blurid="numbersBlur"target="{myLabel}"blurYFrom="10.0"blurYTo="0.0"blurXFrom="10.0"blurXTo="0.0"duration="2000"/><mx:Panelx="10"y="10"width="200"height="300"<mx:Buttonx="40"y="60"label="View"id="myButton"<mx:Labelx="40"y="100"text="4815162342"id="myLabel"Label20个象素。也就是说,你可以将绿Flex提供将超过一种的多种效果组合起来的能力。你可以使用<mx:Parallel>标签或<mx:Parallel并行组合的效果名称为BlurMoveShow在代码中选择整个<mx:Blur>标签,然后粘贴到<mx:Parallel>在<mx:Blur>target="{myLabel}"属性,然后将它移动到<mx:Parallel>标myLabel<mx:Moveid="numbersMoveyBy="20"duration="2000"Label20个象素。<mx:Blurid="numbersBlur"<mx:Moveid="numbersMove"yBy="20"duration="2000"在<mx:Button>BlurMoveShownumbersBlur效果来响应点<mx:Buttonid="myButton"x="40"y="60"label="View"mouseUpEffect="{buttonGlow}"click="BlurMoveShow.play();myLabel.visible=true;"/>第七节你可以在AdobeFlex视图状态/viewstatesMXML程序或组件定义的布局命名。你可以为一个程备注:当然,你还可以使用ViewStack变换/transition是当一个视图状态发生变化时成组播放的几种效果。变换的目的是使视LessonsFileNewMXMLApplication并创建一个名叫ViewStates.mxml的文件。SetAsDefaultApplication。添中到ViewStates.mxml文件里。Height:X:选择面板中的Label控件,并进行相应的属性设置:Text:SearchX:X:Label:GoX:185Label:AdvancedOptionsX:20\h<mx:Panelx="5"y="5"width="300"height="400"<mx:Labelx="20"y="70"<mx:Buttonx="185"y="90"<mx:LinkButtonx="20"y="120"label="AdvancedFlexBuilderMXML代码。AdvancedSearchlinkVBox容器,为出现的对话框指16080,并设置相应的属性:ID:myVBoxX:20CheckBoxVBox容器。VBox容器会自动地纵向排列控件。选择VBox容器中的第一个CheckBox控件,将它的标签属性值设置为RegularCheckBoxExactPhrase。<mx:State<mx:VBoxx="20"y="160"width="160"height="80"<mx:CheckBoxlabel="Regular<mx:CheckBoxlabel="Case<mx:CheckBoxlabel="ExactLink当你在这一步选择基础状态时,MXMLCheckBox控件,因LinkButtonOnClick文本框中输入如下数值:LinkButton控件时,应用程序从当前状态变换成高级查看check框。LinkButtoncheck框,并恢复到基础myTransition(你可以在<mx:transitions>标签中定义代码还确定,当应用程序从任何视图状态(fromState="*")变换成高级查看状态<mx:Parallel<mx:Parallel<mx:Parallel第八 创建定制的组MXML组件可以简化构造复杂程序的过程。将程序划分为便于管理的块,你MXML应用程序文件去测试它。LessonsFile>New>MXMLApplicationMain.mxmlSetAsDefaultApplication。在MXML编辑器设计模式下,将组件视图中布局分类里的面板容器,拖拉到Main.mxml文件中的面板容器,进行相应的属性设置:Title:MainApplicationWindowHeight:X:LessonsNewFolder。myComponents并点击完成。FlexBuilder创建一个名叫myComponents的子目录。myComponentsFile>New>MXMLComponent。MXMLLessons/myComponents文件夹设置为定制组件的默认文你想要扩展面板/panel组件。FlexBuilder创建并保存LoginBox.mxml文件到myComponentsMXMLLoginBox组件,你希望在布局中包括用户名和密码框,以及一个提交/submit按钮。Title:MemberLoginWidth:275Height:Label控件右边插入两个TextInputLabel控件,并将它的文本属性值设为Password \h height="150"title="MemberLogin"><mx:Labelx="10"y="12"<mx:Labelx="10"y="42"<mx:TextInputx="74"y="40"id="txtPwd"<mx:Buttonx="178"y="70"LoginBox组件,当LoginLabelandleLoginEent(privatefunctionhandleLoginEvent():void{lblTest.text="loggingin...";//login \h height="150"title="MemberLogin">privatefunctionhandleLoginEvent():void{lblTest.text="loggingin...";//login<mx:Labelx="10"y="12"<mx:Labelx="10"y="42"<mx:TextInputx="74"y="40"id="txtPwd"<mx:Buttonx="178"y="70"label="Login"<mx:Labelx="74"y="72"X:\hlayout="absolute"xmlns:ns1="myComponents.*"><mx:Panelx="20"y="20"width="375"height="300"layout="absolute"title="MainApplicationWindow"><ns1:LoginBoxx="400"LoginBoxMXML文件中Login"loggingin..."将出现在Login按第九 使用Web服为了在应用程序中使用数据库,AdobeFlexwebservices,HTTPserversremoteobject
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 教育行业销售专员面试技巧及答案指南
- 快闭止回阀建设项目可行性分析报告(总投资6000万元)
- 仓库管理员面试问题及答案
- 企业培训师面试题及培训效果评估方法含答案
- 售前顾问培训及考核标准
- 法务专员面试题库及参考解析
- 市场调查专员招聘面试题库
- 产品经理考试题库含答案
- 首创股份财务总监专业面试题集
- 考核评价岗企业文化与价值观含答案
- 企业业务合规审查参考模版
- 私人防水合同范本
- 医疗器械质量管理自查报告
- 压疮护理健康宣教
- 中医科宣教课件
- 2025湖南怀化中方县高新产业投资有限公司招聘10人备考题库有完整答案详解
- 华为干部管理体系
- 2024年基本级执法资格考试题库及解析(200题)
- 2026中国二手医疗设备进出口贸易现状与未来发展预测报告
- 中国国际大学生创新大赛获奖项目商业计划书
- 身边的工匠精神的事例
评论
0/150
提交评论