问题我想用ActionScript 设置文本框焦点解决办法使用Stage.focus 属性讨论使用Stage.focus属性可在程序里赋值焦点到一个文本框上,每个可视化对象都有一个stage 属性,它是Stage类实例,下面的代码把焦点赋值给叫field的文本框上:+展开 -ActionScriptstage.focus=field;当一个.swf 第一次被载入到浏览器时,它是没有焦点的,因此在必须先设定把..
问题我想只格式化一部分文本而不是全部,或者应用多种格式化到文本的不同部分上解决办法创建TextFormat 对象的setTextFormat( ) 方法对部分文本进行格式化讨论第9.13节已经讨论了格式化整个文本,实际上通过setTextFormat( )方法可以格式化部分文本,需要增加其他参数:index对对应位置的字符格式化。textFormatTextFormat对象引用。下面的例子对..
问题我想发送变量到服务器脚本,并处理返回的结果解决办法使用URLLoader.load( )方法且设置URLRequest实例的data属性讨论当需要处理服务器返回的结果时,应该使用URLLoader.load( )方法。比如一个flash的商店程序,它的商品分类都存在服务器数据库里,当用户点击一个分类,flash发送这个分类id给服务器脚本并返回这个分类的商品数据。URLLoader...
3.10.1 问题你既要控制Box 组件的横向和纵向布局,也要控制组件之间的横向和纵向间距及其子组件的居中设置。3.10.2 解决办法使用verticalAlign 和horizontalAlign 属性同时使用direction 属性设置Box 的布局方向。3.10.3 讨论mx.containers.Box 类定义了几个属性,来控制Box 内的子组件的布局。它们是:direction决定容器如何布置其子组件。值可..
4.5.1. 问题我想确定用户电脑上安装的所有字体,然后为Text 组件选择列表中的一个字体显示。4.5.2. 解决办法使用Font 类中的enumerateFonts 方法设置一个带有选择好字体的fontName 属性的Text 组件的fontFamily 风格4.5.3. 讨论Font 类定义了一个静态方法叫做enumateFonts 来返回一个用户电脑上所有字体的数组。这个方法返回包括flash.text.Font..
8.5.1. 问题我需要在运行时操作和结合多张图片,并使用过滤器来改变这些图片。8.5.2. 解决办法把图像作为BitmapData 对象,使用BitmapData 类combine 方法把两个位图和并为一个新的图像。8.5.3. 讨论BitmapData 和Bitmap 类是在运行时操作图像和建立新效果的强大的工具。这两个类经常串联使用,但又有不同。BitmapData 类封装实际的数据到图像,..
12.8.1 问题我想平滑地过渡颜色。12.8.2 解决办法使用自定义效果,AnimateColor,获得一个在两个色值间平滑过渡。12.8.3 讨论使用AnimateProperty 效果在颜色之间转换会因为色值本身的性质造成闪烁的问题。AnimateProperty 效果平滑地在fromValue 和toValue 之间转换,但是仅限于值为数字的情况下。例如,AnimateProperty 可以出色地将组件从x 等..
13.6.1. 问题我想双向遍历集合,并保持当前所在位置13.6.2. 解决办法使用ListViewCollection 类的createCursor 方法创建可前后移动的游标。13.6.3. 讨论可使用视图游标浏览集合数据视图中所有数据项,访问和修改集合数据。游标是一个位置指示器,它执行特定位置的数据项。你可以使用集合的createCursor 方法返回一个视图游标。游标的各种方法和属..
11.12.1. 问题我想了解和states 改变时所关联的事件。11.12.2. 解决办法添加trace 语句到ENTER_STATE 事件和子组件的CREATION_COMPLETE 事件中,来显示当进入state 子组件何时被创建,离开state 组件何时被移除,但不是删除。11.12.3. 讨论当state 改变时有一系列事件会发生,看起来有点复杂。State 自身广播的事件有从子组件发出的creation, ad..
26.7.1. 问题我想支持那些使用指针设备有困难的用户(指针设备就是鼠标之类)26.7.2. 解决办法为组件定义一个标签顺序以便用户可以不使用指针设备而能导航应用程序26.7.3. 讨论标签顺序是应用程序非常重要的易用性指标。它能使用户无需频繁切换键盘和指针设备就能轻松导航整个应用程序。对于使用指针设备难得用户,标签顺序是很必要的。你可以设置..
26.8.1. 问题我想打印应用程序.26.8.2. 解决办法使用mx.printing包中的相关类,格式化和生成打印输出。26.8.3. 讨论mx.printing包有多个实现类用户生成打印输出。例如FlexPrintJob类定义一个打印任务,添加选项到任务中,发送任务给打印机。下面的BasicPrintJob.mxml例子创建一个打印任务,添加两页输出内容,发送此任务给打印机:+展开-XMLmx:C..
13.8.1. 问题我想过滤和排序XMLListCollection.13.8.2. 解决办法使用XMLListCollection 继承的ListViewCollection 类的filterFunction 和sortFunction 属性或直接传递Sort 类型对象给XMLListCollection 的sort 属性。13.8.3. 讨论XMLListCollection 用于描述根节点下有多个节点的XML 数据。例如nutrition 节点下有food节点被翻译为XMLListCollec..
15.4.1 问题怎样在一个窗体内验证复数的UPC 码呢?15.4.2 解决办法首先创建一个validator, 然后用它来检查UPC 码的检验和是否存在及正确, 否则即返回一个错误。15.4.3 讨论一般商业中使用的UPC 码, 都是由12 个数字所组成的。它包含着一个隐藏的检验和, 这个数是由每个相隔3 位数之积及它们之和相加所得出的。通过以下代码来解释会比较容易去理解..
16.10.1. 问题我想从一个数据源里拖曳项目到图表中。16.10.2. 解决办法覆盖图表组件的dragEnterHandler()和dragDropHandler()方法则可创建一个可拖曳的图表。16.10.3. 讨论在flex 框架中图表的拖曳功能和其他组件的拖曳功能是相同。父类组件为mouseMove 事件定义一个处理器,为dragDrop 事件定义一个处理器来接收被拖曳的数据。在下面的例子中,..
18.11.1. 问题我需要解析返回的SOAP 响应。18.11.2. 解决办法使用Flash Player 将WebService 返回的SOAP 编码XML 的SOAP 类型转换为ActionScript 类型。18.11.3. 讨论返回的SOAP 响应可用E3X 表达式进行解析。常用的类型如表Table 18-1, 以及对应的SOAP和ActionScript 表示。Table 18-1. SOAP 类型和对应的ActionScript类型一个WSDL 文件定义如下..
23.8.1.问题我想使用打开对话框和保存对话框用于打开和保存文件。23.8.2.解决办法使用flash.filesystem.File类的browse开头的那些方法。23.8.3.讨论File类提供了一个对话框窗口用于打开一个或多个文件。使用File.browseForOpen方法选择一个文件时select 事件被触发, 使用File.browseForOpenMultiple 方法选择多个文件时selecteMutiple事件被触发..
24.4.1. 问题我想添加测试用例到现有的测试集合中。24.4.2. 解决办法使用TestSuite的addTestSuite方法24.4.3. 讨论使用addTestSuite方法将测试用例添加到测试集合中,该方法接受一个TestCase类引用作为参数。在后台FlexUnit使用反射找到所有以test开头的方法并执行它们。下面的例子更新自24.2节的createTestSuite方法,添加RegExpTest到测试集中..
23.13.1.问题我想访问HTML元素节点,访问JavaScript变量和函数,操作CSS 样式。23.13.2.解决办法监听complete事件,使用mx:HTML控件的domWindow属性访问HTML DOM。23.13.3.讨论HTMLLoader类支持访问HTML文档的DOM对象。你可以访问HTML的节点元素,也可以和页面里的javascript交互,访问其变量和方法,也可以在JavaScript中调用ActionScript方法。..
wp-cumulus由于Flash大小限制的问题,不能嵌入全部中文字库,所以3D标签云不能显示中文。 常见的解决方案就是嵌入常用中文字体,这样虽然解决了中文显示的问题,但是导出后的 swf 文件的大小不仅增加了,而且后来增加的文字还是不能显示。本文提供一种不用嵌入字符的解决办法,使导出的 swf 文件大小在 8KB 左右,而且不会出现后来的文字..
renderer (渲染器),或item renderer,是flex 框架一个功能强大的特性,它的使用频率很高,通过它您可以用自定义的组件显示数组或集合的数据。渲染器可用于DataGrid, List, Tile,和ComboBox 这些数据容器。渲染器可以为这些容器的数据源中的每一个元素的数据设置渲染样式(即显示形式),从而控制这些数据的显示与更新。在Flex 的应用当中会经常用..
3.13.1 问题我们需要使用LinkBar 组件控制ViewStack3.13.2 解决办法使用LinkBar 的selectedIndex 或selectedItem 属性的任意之一来决定显示ViewStack的哪一条。3.13.3 讨论LinkBar 既可以使用数组作为数据提供者,也可以使用一个拥有多个子组件的容器(例如ViewStack)作为数据提供者。后者对此节最有用。当你传递一个容器的时候,该容器选中显示..
问题我想让一个对象倾斜显示解决办法用默认值创建一个Matrix对象,其中的b和c属性控制Y方向和X方向的倾斜,然后把Matrix对象赋值给可视化对象的transform.matrix属性讨论倾斜根据参考点两边方法的所有像素向反方向移动相同距离,这个效果可使一个矩形变成一个平行四边形。flash.geom.Matrix类定义了a,b,c,d,tx,和ty属性。b和c决定倾斜度(a和..
RegExp 类包含两个方法:exec() 和 test()。除 RegExp 类的 exec() 和 test() 方法外,String 类还包含以下方法,使您可以在字符串中匹配正则表达式:match()、replace()、search() 和 splice()。test() 方法RegExp 类的 test() 方法只检查提供的字符串是否包含正则表达式的匹配内容,如下面的示例所示:+展开-ActionScriptvarpattern:RegExp=/C..
Flex 包含了Flex 类库、MXML 和ActionScript 编程语言,如下图所示:当然,Flex 还包括Flex 编译器和调试器,它们并没有在图中示出。你可以混合MXML 和ActionScript 来发Flex 应用程序。事实上, MXML 和ActionScript编程语言都提供了访问Flex 类库的能力。通常的做法是:使用MXML 去定义用户界面的元素,使用ActionScript 去定义客户端的逻辑并..
tag:ActionScript 3 CookBook 简体中文1.3. 在哪里写ActionScript 代码呢问题当你有了ActionScript工程后,接着就需要知道任何输入代码。解决方法在类结构中或方法体中添加 ActionScript 代码讨论在以前的ActionScript 1.0和 2.0中, 有多种途径添加代码:在时间线上,按钮上或电影剪辑上,在电影剪辑的时间线上通过#include命令引入外部的as文件..
tag:ActionScript 3 CookBook 简体中文问题你需要在运行时跟踪信息或某个数据变量解决办法使用 trace 函数,把数据传给它,运行程序,你会发现信息已经在Eclipse的控制台下输出了。讨论你可以跟踪一个消息或一个变量的值,也可以输出任何其他数据,就像你在早期的版本中那样,比如:trace("Hello, world"); trace(userName); trace("My name is ..
tag:ActionScript 3 CookBook 简体中文1.1. 新建一个 ActionScript 工程问题运行 Flex Builder 2 然后新建一个ActionScript 工程解决方法使用 新建 ActionScript 工程向导来建立你的工程讨论一个ActionScript 工程一般至少包含一个class文件和一个用来放置编译输出的SWF和HTML的bin目录。还包含一些设定来告诉编译器怎么去编译工程。我们只要用向..
出于安全方面的考虑,在客户端的Flash Player 中运行的应用程序,只有在满足如下条件之一的情况时才能访问远程的数据源,:1. 应用程序所编译的SWF 文件与远程数据源位于同一个域中。2. 使用代理(proxy),并且你的SWF 文件位于和代理相同的服务器上。Adobe Flex DataServices 为Flex 应用程序提供了一个完整的代理管理系统。同时,你还可以通过..
问题我要拷贝BitmapData中的象素解决办法使用BitmapData的copyPixels( )方法讨论copyPixels( )方法的实现也很简单,只要得到象素值然后画到其他地方,非常类似于draw( )方法。但是copyPixels( )可控制拷贝象素的数量和目标。只要指定一个矩形区域和目标点即可:+展开-ActionScriptbitmap.copyPixels(sourceBmp,srcRect,destPoint);srcRect是flas..
问题我要用位图填充图形解决办法使用Graphics.beginBitmapFill( )方法讨论Graphics.beginBitmapFill( )方法允许用位图填充图形,它接受以下参数:bitmap填充用的BitmapData对象matrix默认下不需要应用转换,也可指定flash.geom.Matrix对象进行位图的缩放,旋转,倾斜,透明等变换。repeat布尔值,指定是否平铺位图,默认为true。smooth布尔值,指..