FLEX4_Flex4教程
- 格式:pdf
- 大小:860.35 KB
- 文档页数:41
了解提示点可在编码期间将提示点嵌入Adobe F4V 或FLV 视频文件。
过去,在影片中嵌入提示点是为了给放映员提供了一个可视信号,以指出胶片盘中的胶片即将放完。
在Adobe F4V 和FLV 视频格式中,提示点的作用在于:当视频流中出现提示点时,在应用程序中触发一个或多个其他动作。
您可以对Flash 视频使用几种不同类型的提示点。
可以使用ActionScript 与在创建视频文件时嵌入其中的提示点进行交互。
• 导航提示点:您可以在编码视频文件时,将导航提示点嵌入到视频流和元数据包中。
使用导航提示点可以使用户搜索到文件的指定部分。
• 事件提示点:您可以在编码视频文件时,将事件提示点嵌入到视频流和元数据包中。
还可以编写代码来处理视频播放期间在指定点上触发的事件。
• ActionScript 提示点:ActionScript 提示点只对Flash FLVPlayback 组件有用。
ActionScript 提示点是您使用ActionScript 代码创建和访问的外部提示点。
您可以编写代码来触发这些与视频播放有关的提示点。
这些提示点的精确度要低于嵌入的提示点(最高时相差1/10 秒),因为视频播放器单独跟踪这些提示点。
如果您计划创建一个应用程序,希望用户能在其中导航至提示点,则应在编码文件时创建并嵌入提示点,而不应使用ActionScript 提示点。
您应将提示点嵌入FLV 文件中,因为这些提示点更加精确。
由于导航提示点会在指定的提示点位置创建一个关键帧,因此可以使用代码将视频播放器的播放头移动到该位置。
您可以在视频文件中设置一些希望用户搜索的特定点。
例如,视频可能会具有多个章节或段,在这种情况下您就可以在视频文件中嵌入导航提示点,以此方式来控制视频。
有关使用提示点对Adobe 视频文件进行编码的详细信息,请参阅《使用Flash》中的“嵌入提示点”。
您可以通过编写ActionScript 来访问提示点参数。
Flex4之事件详解第一、Flex事件简介事件贯穿于Flex应用开发的全过程。
事件是ActionScript3.0中最重要的部分之一,也是Flex应用程序开发的核心基础。
本章将在DOM 3的基础上详细讲解ActionScript3.0和Flex中的事件机制。
第二、一切从事件开始利用事件处理,可以方便地响应和处理用户输入和系统事件。
Flex 事件模型不仅方便,而且符合标准,新的事件模型基于文档对象模型(DOM,Document Object Model)第3级事件规范,为Flex程序员提供了强大而直观的事件处理工具第三、事件简介什么是事件呢?我们去商店里买鞋子时,选择好鞋子后,告诉销售人员鞋子的款式、号码、付款,然后服务员将符合购买要求的鞋子交给我们。
这样就完成了一个事件的流程。
但是如何找到售货员买鞋子,售货员拿什么样的鞋子给客户,都是事件要处理的事情。
对于Flex而言,其重要的部分就是与用户进行交互。
用户的操作,例如键盘输入、鼠标点击等引起界面的响应,然后在内部进行一系列的操作,最终返回用户需求的信息。
简单的过程,即包含了事件的核心思想。
用户的操作触发了某个事件,同时产生该事件的信息,通知相关的对象进行处理。
其中,如何发起消息、传递消息是Flex非常关键的问题。
第四、DOM3事件机制DOM3的事件模型是非常简单的,符合我们日常思考的习惯。
在上一节开头所举的买鞋的例子中,买鞋的人(客户)可以看作事件发送者(Event Dispatcher),买鞋的过程可以看作事件,而销售人员即事件侦听器(Event Listener)。
买鞋可以看作事件的类型(Type)。
买鞋的个人即事件的目标(Target)DOM3事件机制包含4个部分:注册事件侦听器、发送事件、侦听事件、移除事件侦听器。
这4个部分贯穿整个事件的发生和结束。
第五、ActionScript3.0中的事件机制在Flex的事件机制中ActionScript扮演了非常重要的角色。
flex4mxml文件就是.MXML的xml文件actionscript文件.as 编写代码编译成swf文件flex4 应用程序需要使用flash builder4的软件来创建flash catalyst事件数据绑定1、基础知识介绍1.1、了解fl ex和flash平台开发工具—flash builder开源框架---flex内嵌组件扩展组件语言---ActionScript3.0类库(符合ECMA标准的脚本语言,主要用来实现业务逻辑)语言---MXML(基于XML的描述式语言,主要用来描述UI布局的)Flex SDKFlex框架软件开发包---编译器---调试器Flash Builer开发工具Flex SDK所有的功能提供一些额外的特性提高生产力---上下文的代码提示---一个可交互的逐步调试器---一个可视化的设计环境(布局和样式)---连接到服务器端数据的数据服务向导---内存和性能检测---自动测试支持及更多的特性Flash Builder版本:---标准版---增强版:致力用创建关键业务应用,包含了标准版所有特性,并添加了一些企业及的特性在里面,包括内存和性能检测以及自动测试。
增强版的数据可视化支持你创建图表和丰富的可视化面板。
1.2、了解flash Bulid er 和flex项目默认的工作空间位于:Document and settings→user directory→adobe flash builer beta2.metadata和configuration目录包含了flash builder工作空间的设置。
默认情况下,flash builder会把我的flex应用程序编译到我的项目文件夹下面的一个名为“bin-debug”的目录下。
源文件将会保存在项目目录中的“src”目录下。
组件设置:MX+Spark(同时使用两个库)MX only(这个mx库比较老)修改编辑器中的字体大小:General→Appearance→Colors and fonts→basic→text font改变代码间距:Flash builder→indentation→actionscript.并且取消方法中的对齐参数。
Flex 4 样式与布局第一篇 Flex 4 与自定义布局(Layout)Flex 4/Spark组件架构的新功能之一是可以定制一个容器的布局而不必改变容器本身。
您需要做的就是定义一个自定义布局。
Flex 4/Spark架构中的容器并不控制它们自己的布局。
相反,每种容器具有一个布局属性,用于确定如何在屏幕上设置子元素的布局。
可以使用一个单独的Group容器,并赋予其一个垂直布局、水平布局或平铺布局,这取决于您将如何创建它。
代码很简单,如下所示:(参考文章:Flex 4与自定义布局:译文:/lihe111/archive/2009/07/06/4325571.aspx原文:/2009/05/flex-4-custom-layouts.html)第二篇 Flex 4 SkinClass 改变组件外观在Flex 4中,SkinClass指向的文件通常用一个使用s:skin标签(或者sparkskin)的MXML 文件进行定义。
通过skinclass来改变外观的spark组件通常也是skinclass引用的Host component。
Flex 4 中新的改变外观架构可以在很大的程度上将组件和组件的外观设计分开,这样组件外观设计的代码通过改变小部分的代码就可以得到重用了。
一、SkinClass必须包含的三样东西:1、HostComponent metadataSkinClass文件需要引用HostComponent对象,而HostComponent是指需要改变外观的组件。
我们可以通过metadata标签来指定HostComponent。
如:我们需要设置Button 的外观,那么Button就是HostComponent。
Code:1.<fx:Metadata>2. <![CDATA[3. [HostComponent("ponents.Button")]4. ]]>5.</fx:Metadata>2、States如果HostComponent中有SkinState(一般用metadata标签来声明),例如:s: ButtonBase 中包含了 1. [SkinState("up")]那么在相应的skinclass mxml 文件中必须有如下相应的state : 1. <s:states>2. <s:State name="up"/>3、 Skin partsHostComponent 中的属性可以被定义为必须或者是可选的部分(skin parts ),可选的属性一般通过metadata 标签将其默认设置为false 。
实验三Flex 4程序设计与开发【实验目的】1.熟悉Flex 4编程基础;2.掌握ActionScript基本语法;3.掌握ArcGIS Flex API编程基础。
【实验内容】一、Flex 4编程基础1. Flex是Adobe公司的一套Web应用开发框架,可用于构建具有强力表现力的Web应用程序。
2. Flex API开发具有以下优点:单选(1)开发效率高:开发环境比较好用,代码智能提示方便高效,调试方便。
(2)客户体验好:界面UI漂亮,各种动画效果实现简单方便。
3. 一般的Flex程序包含以下内容:单选(1)MXML文件。
每个Flex应用程序至少包含一个MXML文件。
它是该程序的主文件,类似于C语言的main函数。
(2)ActionScript代码。
为应用程序添加动态行为、事件处理能力,就需要ActionScript。
ActionScript代码可以作为一个代码块,直接添加到MXML文件中,也可以单独创建ActionScript文件,然后导入MXML文件中。
(3)CSS。
Flex程序的界面外观可以通过设置组件属性(颜色、字体大小等)来改变。
有关组件外观的属性可以通过四种方法来进行设置:主题、CSS文件、MXML文件中的样式块、组件的标签。
(4)资源。
Flex程序的各种资源,如图片、声音等。
(5)数据。
来自XML文件或数据库的数据,显示在数据显示组件中(如DataGrid、ComboBox等)。
(6)以上内容,都是在Flash Builder中,编译到swf文件中,swf文件可以运行在客户端的flash player中。
4. 开发Flex应用程序的大致步骤:(1)在Flash Builder中创建工程。
(2)创建MXML主程序。
(3)设计用户界面、控件布局。
(4)使用样式(style)和皮肤(skin)修饰界面视觉效果。
(5)编写ActionScript代码,处理事件,连接Web服务器,获取数据或者提交数据。
序任何人写书时都会遇到麻烦,我在编写本书时遇到的麻烦则格外多。
具体来讲,本书诞生于2008年年底,当时我同时遭遇了三重打击:Ruboss框架没能作为商业产品;Enterprise Flexible Rails终未成书;Hello! Flex 3的版式失败。
用嘻哈巨星弗里德里希·尼采(Friedrich Nietzsche)的话说:"只要没杀死我们,就会让我们变得更坚强。
" 2008年年底这场失败风暴绝对让我变得更坚强,甚至也让本书变得更好。
上面只是简略的描述,如果你想知道得更多,请继续往下看……就在Manning出版公司于2008年年初出版Flexible Rails一书不久,我开始在自己的公司Ruboss全职工作,并招募了合作创始人Dima Berastau。
我们一边做咨询,一边启动了一个产品,即Ruboss框架。
Ruboss框架使用GPL v3许可和一个商业许可,所以它的Flex版本免费,AIR版卖499美元。
我想通过写书来推销Ruboss框架,所以我与Manning出版公司的Mike Stephens探讨为Flexible Rails写本姊妹篇,书名就叫Enterprise Flexible Rails,这本书将延续Flexible Rails,带领读者使用Ruboss框架来开发他们的Flex项目。
在我同时开发Ruboss框架和撰写Enterprise Flexible Rails期间,2008年年初Mike找到我,让我推荐一个人来为Manning出版公司写Hello! Flex 3。
该出版商新开发了一个系列,名为"Hello! X"。
这个系列希望采用明快有趣的形式介绍某个主题,并配上漫画插图。
我想都没想就说:"我推荐我自己。
"我认识J. D. Frazer(即Illiad,网络漫画User Friendly的作者),所以我建议Manning出版公司在"Hello!"系列中使用User Friendly漫画,然后我为他们作了介绍。
Flex 4打印功能Flex4的打印功能和Silverlight 4打印功能步骤很相似,但是实现不同,Flex 4的打印功能不是事件驱动,基本步骤如下:步骤1:建立FlexPrintJob对象,可以把该对象看作Silverlight 的PrintDocument;步骤2:使用一个布尔变量控制要打印的图片格式,例如是打印矢量图还是打印位图;步骤3:调用FlexPrintJob中的Start()方法,这时会弹出提示窗口,询问是否开始打印,选择确定,将开始打印;步骤4:建立一个打印对象,并添加这个打印对象到现实列表中;步骤5:使用FlexPrintJob中的addObject()添加对象到打印页面中;步骤6:调用FlexPrintJob中的send()方法,对添加的打印页面进行打印;步骤7:打印后,删除已经打印的视图对象;下面提供按钮事件代码,点击按钮后,会打印出“Hello World”。
protected function button1_clickHandler(event:MouseEvent):void {var job : FlexPrintJob = new FlexPrintJob(); job.printAsBitmap = false;if(job.start()) {var group : HGroup = new HGroup();group.height = job.pageHeight;group.width = job.pageWidth;var text : SimpleText = new SimpleText(); text.text = "Hello ";text.setStyle("fontFamily", "Arial");text.setStyle("fontSize",12);group.addElement(text);text = new SimpleText();text.setStyle("fontFamily", "Arial");text.setStyle("fontSize",12);text.text = "World";group.addElement(text);addElement(group);job.addObject(group, FlexPrintJobScaleType.NONE);job.send();removeElement(group);}Flex中的打印技术时间:2009-06-29 20:40来源:未知作者:admin 点击:次总结了一下打印技术。