本章用到的 Flex3中文教程--homesforsale.xml文件6.4.1. 问题我想在客户端对显示的数据进行过滤6.4.2. 解决办法给ArrayCollection 的filterFunction 属性赋值自定义函数引用以执行过滤匹配。6.4.3. 讨论为了掩饰客户端过滤数据,下面的例子添加一个city 过滤功能。UI 新增一个TextInput 文本输入框供用户输入city 名称并过滤掉DataGrid 中匹配的..
问题我该如何调用web service 方法解决办法使用mx.rpc.soap.WebService 对象,调用WebService对象方法讨论前面已经提到,Flash播放器没有内建web services支持,但是Flex framework 提供了一个解决方案,这一节将讨论如何使用Flex 2 提供的web services解决方案。Flex framework 包含mx.rpc.soap.WebService,该类可调用web services方法,首先创..
在IE浏览器下面,从flash中打开链接地址时,需要点击2次才能打开链接地址,这个是因为:第一次点击是去掉网页中的flash 显示虚框。所以第二次点击才是链接点击。 所以只要解决掉如何让flash在网页中不显示虚框就可以了。 解决方案:不要直接把嵌入flash的代码放在html里,通过javascript调用它,这样就不会产生此类问题了 首先,我们创..
8.6.1. 问题我想要让用户改变颜色,对比,或锐利图像。8.6.2. 解决办法创建一个ConvolutionFilter 的实例, 绑定ConvolutionFilter 的矩阵属性到用户可以改变的文本输入。然后添加滤镜到图像的滤镜数组,以适用于滤镜。8.6.3. 讨论ConvolutionFilter 是flash.filter 包中一个最多功能和复杂的滤镜。它可以用来作浮雕,检测边缘,锐化,模糊,等许..
问题我要用渐变色填充图形解决办法使用beginGradientFill( )和endFill( )方法完成渐变填充讨论渐变色填充是用多种颜色之间的渐变层次来做填充色。Flash支持线形渐变,就是左边的颜色渐变到右边的颜色(这是水平渐变,也可以垂直渐变),或者指定旋转角度。Flash也支持放射渐变,它是从中心到四周渐变颜色。通过beginGradientFill( )启动渐变填充..
概述 在Ajax 和 微软 WPF 袭来之前,Macromedia 率先推出基于Flash的RIA解决方案,用于创建具有桌面程序富有交互和多功能的Web应用程序,我们称之为“Rich Internet Application”。现在,新东家 Adobe 更是赋予了Flash超越Web之能力,使之成为完整的开发环境。除了理论,本书来源于实际ActionScript应用,超过300个解决方法用于解决各种编写代码..
1.16.1.问题我想定义一个方法,其参数有默认值或null值,以便调用方法时不必每次都进行传值。1.16.2.解决办法在方法申明时直接对方法参数进行赋值,赋予默认值或null值。1.16.3.讨论要想为方法定义一个或多个可选参数,最简单的办法就是为参数对象设置为默认值或null。ActionScript基本类型String, Number, int, 和Boolean不能设置为null值,不过..
让Flash广告具有记忆功能 当你常去的论坛上有个 Flash 广告,而你每次刷新页面的时候它都从头播放。会不会感觉很烦? 所以我们要改装一下这个Flash.给他植入记忆功能.继续播放动画要实现的效果: 刷新或关闭页面的时候记住上次的播放头位置. 下一次打开页面动画接着上一次的位置继续播放.(注:把此段代码放到动画的第一帧即可.)应用:效果可..
17.1.1. 问题我想要存贮数据到本地硬盘,并想要在多个会话中获取这些数据。17.1.2. 解决办法使用ShareObject 类来创建会被存储到用户系统并能被相同会话或以后的会话访问的数据对象。17.1.3. 讨论实际上ShareObject 的行为有些像浏览器的cookies,ShareObjects 常常被成为Flash Cookies,它可以:?? 1.维护本地持久化?? 2.在Flash Media Server ..
15.11.1 问题怎样在一个正则表达式中对一些字符类型如(整数, 字符, 空格以及它们的反值)进行匹配?15.11.2 解决办法可以通过字符类型标记来实行。15.11.3 讨论通过使用字符类来进行字符匹配一种容易且非常有效的方法。首先, 我们需要建一个包含”\”号的字符类型标记, 它是用来告诉正则表达式处理引擎接下来的字符是一个字符类型而非普通字符。然..
14.1.1 问题我需要绑定一个对象的属性到另外一个对象中去。14.1.2 解决办法在MXML 组件中使用{}标记或者mx:Binding标记。14.1.3 讨论当你声明一个对象的属性到绑定到另外一个对象的属性,一个事件通知从源对象到目标对象则进行了更新的分发了。内部,则将该属性复制到目标属性的变量。为了绑定一个在MXML中定义的变量,你可以使用{}和mx:Binding..
今天反编译一个涂鸦flash时,出现了Mouse 未定义的错误Mouse.show();//这句报as3 Mouse 未定义 错误看了下这个as文件,发现没有导入flash.ui.Mouse,只要导入这个类就不报错了。 import flash.ui.Mouse;
1.18.1.问题我想创建一个接口,并创建一个组件实现这个接口。1.18.2.解决办法创建一个ActionScript文件,申明此文件为一个接口,定义此接口需要的任意方法。要实现此接口,在定义类时使用implements关键字。1.18.3.讨论接口是一个很强大的工具,它描述一个契约,所有实现它的类都必须完全按照接口所定义的方法包括作用域,名称,参数和返回值保持..
问题我想改变音量或左右声道平衡解决办法创建SoundTransform 对象, 改变音量及平衡度, 把该对象赋值给SoundChannel 对象的soundTransform属性。讨论在以前的版本中,可直接通过Sound对象改变音量及平衡度,现在这些被抽象出来形成SoundTransform类。SoundChannel对象有个soundTransform属性,它是SoundTransform的类实例。要改变音量或平衡度,..
9.17.1. 问题你想在Flash IDE 中创造一个按钮,它的每个状态有不同的动作。9.17.2. 解决办法创建一个FLA 并在此FLA 中创建一个意味着有多个帧和动作的输出的MovieClip 元件。利用生成的SWF 和MovieClip 名称,在源代码和元件引用中通过利用[Embed] 元数据标记将MovieClip 为你动作的拓展。把一个mx.core.UIComponent子类当作mx.controls.Button实..
10.5.1. 问题你想在运行时启动和禁止列表类控件的拖拽操作。10.5.2. 解决办法使用列表类控件的拖拽事件属性来管理属性值。10.5.3 讨论Flex 框架的列表类控件具有内置的管理器来与DragManager 互动,通过使用dragEnabled和dropEnabled 属性,提供了一个便捷的途径来启动控件响应拖拽动作。通过使用内建的事件属性dragStart, dragEnter,dragOver..
问题我想让物体以一定的速度在指定的方向上移动解决办法转换速度和角度为x和y速率,进而改变对象的x和y轴位置讨论11.1节解释了如何在x和y轴上移动物体,但是如果知道了角度和速度,那该怎么移动物体呢?例如:我想让物体沿着135度移动,速度为每帧4像素。这个时候我们可利用基本的数学知识把角度和速度转换为x和y速率。首先,我们要确定角度,如..
问题我要画一个椭圆解决办法使用Pen.drawEllipse( )方法讨论画椭圆比画圆就抽象多了,而且Graphics类没提供画椭圆的方法(原书错误,系统有提供的),使用Pen类的drawEllipse( )方法是比较简单的方法,它需要四个参数:x椭圆中心的x坐标y椭圆中心的y坐标xRadius椭圆x方向的半径yRadius椭圆y方向的半径下面的代码定义了Pen对象并画出一个椭圆:+展..
有几种方法在一个Flex 应用程序中创建多态页面。你可以使用ViewStack 组件、创建单独的MXML 文件、或者使用视图状态。视图状态可以被看作是一个组件或组件群构成的预定义的用户界面布局。你可以使用视图状态为程序表现出不同的视觉效果。每一种视图状态都是基于一种基础的状态,并进行继承和扩展。在随后的例子中,当用户在组件上滚动鼠标时,基..
作者:Robert Crooks 时间: 2004-08-23 文档类型:原创 来自:蓝色理想 创建第一个Flex应用程序作者:Robert Crooks (Macromedia培训小组)翻译:MoonFun.qhwa轉載請註明來自藍色理想在本教程中,你可以阅读到Flex的简单介绍,还可以利用MXML创建一个简单的分类购物车,从而学习到Macromedia Flex应用程序的基本构成。你将会学到:创建一个应..
本章用到的 Flex3中文教程--homesforsale.xml文件6.6.1. 问题我需要管理有DataGrid 和它的项渲染器发出的事件6.6.2. 解决办法使用项渲染器的owner 属性调度父组件DataGrid 的事件6.6.3. 讨论上一节中,通过传递类引用给column 的headerRenderer 属性,自定义列表头渲染器被创建出来。这一节将继续上一节的表头渲染器。当表头渲染器的复选框被点击..
14.7.1 问题我想创建一个基于某种特殊的而非依赖于propertyChange 事件的数据绑定。14.7.2. 解决办法设置[Bindable]标签的event 属性,使用一个字符串做为类型的参数来进行事件的分发。14.7.3. 讨论Flex 框架中的数据绑定的基础其实是一个基于事件的系统。默认的数据绑定的事件类型是分发到propertyChange 事件。在框架内部,对于目标属性数据的..
13.12.1. 问题我的应用程序在多个位置有多个数据对象,但需要确保所有对象的都分配有唯一的ID 属性,以便用于测试对象之间的平等并确定他们是否表示相同的数据片段。13.12.2. 解决办法你的数据可实现IUID 接口,使用mx.core.UIDUtil.createUID 方法给对象生成新的唯一的id。13.12.3. 讨论在有些情况下是非常有用的,比如使用Adobe LiveCycle mes..
15.8.1 问题如何建立一个正则表达式, 用来证验主流的信用卡包括Visa, MasterCard, American Express,Discover 等等呢?15.8.2 解决办法根据以下的原则去创建一个正则表达式:找出起首的几个数字跟哪个信用卡公司的卡相符然后根据相对应的卡的种类, 检查输入的数字是否正确。15.8.3 讨论实际上, 所有主流信用卡号码都会存在着一些用以辨识的数字, 我..
20.4.1 问题我想在HTML 里调用该HTML 包含的Flex 应用程序的ActionScript 方法。20.4.2 解决办法使用ExternalInterface 在JavaScript 里设置对Flex 的回调方法并且在JavaScript 里调用ActionScript 方法。20.4.3 讨论ExternalInterface 类不仅仅封装了运行时与JavaScript 通信所需的功能,同时也包含了从JavaScript 内调用ActionScript 方法所有..
4.1.1. 问题我想正确的显示出可能被传送到文本对象的HTML 和简单字符串4.1.2. 解决办法使用htmlText 和text 属性,依靠输入模式,来适当地渲染文本和采用正则表达式分析被传到Text 对象中的字符串。4.1.3. 讨论Text 和TextArea 不会正确的显示HTML 除非HTML 被传Text or TextArea 组件的htmlText 属性。通常把非HTML 文本传递给Text or TextArea..
3.25.1 问题你需要它的根据子组件改变某个容器的尺寸。3.25.2 解决办法覆盖容器的measure 属性,当Flex 框架调用updateDisplayList 方法的时候调用该属性。3.25.3 讨论无论何时,只要容器需要确定子组件有多大以及根据所有的式样和约束信息自己有多大的时候,Flex 框架都会调用measure 方法来确定容器本身的尺寸。类似3.24 节覆盖updateDisplayL..
3.9.1 问题你需要禁用容器的垂直滚动条并且在某个组件上创建一个用户可以通过鼠标滑过来控制滚动的区域。3.9.2 解决办法使用horizontalScrollPolicy、verticalScrollPolicy 和verticalScrollPosition 属性。3.9.3 讨论我们可以通过horizontalScrollPolicy 和verticalScrollPolicy 属性控制滚动条。如果要使其中一个或全部滚动条始终显示,则将其..
最近开发遇到的问题更偏向于js了。写了一个程序,让js与flash通讯,结果flash能调用js方法,但是js竟然不能调用flash方法。比如说我在flash中开放了接口“abcd”,但是用js调用 swf.abcd()。竟然报错说abcd不是方法。这个问题是只出现在firefox下,ie下运行正常。于是开始狂使用alert了——后来发现firebug可以断点调试,长叹!发现在firefox下通..
问题我想载入声音到SWF应用程序上。解决办法创建一个Sound对象,载入外部的声音文件讨论创建一个Sound对象很容易,这跟创建其他类实例差不多,首先记得先引入Sound类库:+展开-ActionScriptimportflash.media.Sound;Var_sound:Sound=newSound();接着我们需要一个声音文件,比如song.mp3,和swf文件放在服务器的同一个目录下。要载入声音文件到So..