日志

FLEX开发技巧 <上一篇 | 下一篇> 

  1. 巧用AS3的事件机制:如何用一个按钮去触发另一个按钮的点击事件

bt1.addEventListener(MouseEvent.CLICK,function(...args){
 trace("bt1");});
bt2.addEventListener(MouseEvent.CLICK,function(...args){
  bt1.dispatchEvent(new MouseEvent(MouseEvent.CLICK));});

Flex项目如何设置可访问本地资源

一个SWF的数据访问模型有两种,一种是访问网络,一种是访问本地数据,默认情况下,Flex编译后的SWF文件都是属于第一种情况的(只可访问网络),如果我们要把它改为只可访问本地数据模式,则需要在Flex项目的编译参数中增加:-use-network=false

如何限制文本输入的类型?

我们还可以使用TextField本身的输入限制属性(TextField.restrict)来限制用户的输入类型。并且这个属性非常灵活的地方在于,它可以接受正则表达式,所以可以很好的完成输入验证。

比如一些常用的输入限制:

  1. my_txt.restrict = "A-Z 0-9";//仅允许在文本字段中输入大写字符、空格和数字
  2. my_txt.restrict = "^a-z";//包含除小写字母之外的所有字符
  3. my_txt.restrict = "\\-\\^";//以使用反斜杠输入 ^ 或 - 的本义。 认可的反斜杠序列为 \-、\^ 或 \\。 反斜杠在字符串中必须是一个本义字符,因此在 ActionScript 中指定时必须使用两个反斜杠。 这段代码只包含短划线 (-) 和尖号 (^)
  4. my_txt.restrict = "A-Z^Q";//可在字符串中的任何地方使用 ^,以在包含字符与排除字符之间进行切换。 这段代码只包含除大写字母 Q 之外的大写字母
  5. my_txt.restrict = " -~";//只包含从 ASCII 32(空格)到 ASCII 126(代字号)之间的字符

Robotlegs是开源项 目Flint的作者建立,是一个纯AS3的内存占用少而且目标明确(装配应用层,并提供通讯机制)的微架构,简单来说,他是来帮助你装配将你的对象装配在 一起,他提供一种粘合手段使你的应用以一种解耦的方式来运行,而且不需要面对各种目前其他各种框架所带有的缺陷。Robotlegs的类库编译后只有 25K,使用自动的,基于[Inject]元数据的方式来进行依赖注入(DI)。这里有详细的开发文档,来解释各种用法和理念,这里还有许多例子供学习和研究。

SomaCore是 一个针对Flash/Flex/AIR的基于AS3事件的MVC框架,它迄今为止最为轻量级的Flash/Flex/AIR框架了,它的类库编译后只有 18K。如果你像作者一样,厌倦了那些框架的争吵,厌倦了DI/IOC等怪异的处理方法,那么你可以试试这个框架,这个结合了PureMVC的代理/协调 者思想和Mate事件系统的优点的充分发挥Flash体系的超轻量级框架。在这里, 作者介绍了该框架的主导思想,并绘制了简单而且清晰的结构图来介绍其中的概念,让我们为之耳目一新的是它的新元素:Wire(导线),这个东西似乎是万能 的,它既可以管理视图、又可以管理模型,还可以同时管理他们,这为我们的应用带来了很大的灵活性,当然只有这个导线还是不够的,Soma框架最外层的管理 也只有一个类Soma,你的应用只需要扩展这个总控制类,来完成命令、视图、导线的配置,就可以构成一个完整的应用了。整个框架结构简单,易于理解和上 手,是不是很让人感觉舒服呢?

最后再为大家总结下本周开发者贡献的开发技巧:

Sending ActionScript Object To Java,为大家介绍了使用RemoteObject来传送未映射的AS对象到后端,后端采用flex.messaging.io.amf.ASObject这个范类型来获得接收到的值,尽管我们理解这样有点大可不必,但是按照作者自己的说法,这样可以减少传输的数据量,而且如果你有上百个更新、插入、删除的操作时,这样就节省大量时间而且操作迅速。

已经公开 2009年11月25日 9:20 作者: 曾功立

评论

还没有人发表评论
请登录后再发表评论以赚取更多积分