posts - 22, comments - 17, trackbacks - 0, articles - 0
  IT博客 :: 首页 :: 新随笔 :: 联系 :: 聚合  :: 管理

09 2007 档案

     摘要: 最近用HTML Applications(hta)开发了一个Flash课件的XML编辑器,类似html编辑器的可视化编辑和预览flash课件的内容,最后导出为flash课件能解析的XML文件。之前并没怎么去了解hta,经过这次开发,发现用html+js再加一些activex object便可开发出一些功能不错的应用程序。

其实hta很简单,就是添加了hta标签,改变后缀名为hta的html文件。不过因为hta程序不是在浏览器中运行,因此它可以使用一些html中无法使用的activex control,这样为hta访问和操作本地文件提供了可能。而javascript的轻巧和强大也为实现各种应用解决了方法。  阅读全文

posted @ 2007-09-27 14:52 flashlizi 阅读(1988) | 评论 (0)  编辑 |

     摘要: ExternalInterface API是专门处理flash与外部应用的交互的。在IE浏览器下,将flash对象放在form标签之间的时候,js就会报错,ExternalInterface的call和addcallback方法失效。网上有两种解决办法,经测试均有效。  阅读全文

posted @ 2007-09-10 16:13 flashlizi 阅读(1442) | 评论 (1)  编辑 |

     摘要: 之前比较少接触过MediaPlayer ActiveX,最近由于工作需要,对MediaPlayer ActiveX做了点了解,发现内容还是挺丰富的。用exescope打开wmp.dll,在TYPELIB里有WMP的所有方法和属性,内容那叫一个多啊。通过网上其他文章,再结合TYPELIB,记录下一些比较重要的东西。

其中与流播放有直接关系的事件有:OpenStateChange,PlayStateChange,Buffering,MarkerHit,ScriptCommand等。这里也只说一下PlayStateChange,其他方法只要参考TYPELIB就非常清楚了。  阅读全文

posted @ 2007-09-10 16:10 flashlizi 阅读(818) | 评论 (0)  编辑 |

posted @ 2007-09-10 16:07 flashlizi 阅读(495) | 评论 (0)  编辑 |

     摘要: 此类是根据java.util.zip中CRC32类写的AS3版CRC32校验类。  阅读全文

posted @ 2007-09-10 16:03 flashlizi 阅读(2106) | 评论 (0)  编辑 |

     摘要: Flash CS3里的project那真叫一个鸡肋,感觉基本没什么用处。前一阵想起jsfl,于是便做了一个FlProject给自己用。基本上满足了我的一些需求:不离开flash IDE就可以浏览本地文件夹,可以很方便的添加和删除文件夹,as,fla等,能起到一定的项目管理作用。  阅读全文

posted @ 2007-09-10 16:01 flashlizi 阅读(1547) | 评论 (1)  编辑 |

     摘要: 很多时候,我们需要按照一定顺序执行一系列动作,必需保证一个动作完全执行完毕后再执行另外一个动作。解决办法很多,比如执行完一个动作就广播一个事件,再执行下一个动作。利用了Object.watch方法来监控success属性,每当一个func[i]执行完毕后,就会改变success为true,继而执行下一个函数。此方法比和事件侦听是同一原理,在某些情况下又更为简洁实用。  阅读全文

posted @ 2007-09-10 15:53 flashlizi 阅读(259) | 评论 (0)  编辑 |

     摘要: 从as1,2开始Function类就有call和apply2个方法了。相信大家对这2个方法的应该有一些了解,这2个方法的第一个参数thisObject在有些时候很有用,合理利用他们可以使函数表现得像另一个对象的方法,而不将函数存储在该对象中。  阅读全文

posted @ 2007-09-10 15:49 flashlizi 阅读(391) | 评论 (0)  编辑 |

     摘要: Object对象有2个属性:__proto__和prototype。__proto__是引用用于创建对象的类或构造函数的 prototype属性;prototype是对类或函数对象的超类的引用。在as2中,对象的基本继承都是通过原型链的。因此,我们可以利用Object对象的__proto__和prototype属性来实现动态改变实例对象所属的类。  阅读全文

posted @ 2007-09-10 15:46 flashlizi 阅读(406) | 评论 (0)  编辑 |

     摘要: 一般情况下,大家都知道要让flash捕获用户的按键动作可以使用Key类中的onKeyDown、onKeyUp事件以及Key.isDown()、Key.getCode()和Key.getAscii()等方法来实现。这里说一下如何捕获一些组合键(如ctrl+s)?下面是一段捕获ctrl+s快捷键的AS2代码  阅读全文

posted @ 2007-09-10 15:41 flashlizi 阅读(745) | 评论 (0)  编辑 |

     摘要: AIR应用程序描述符(AIR application descriptor)文件,即application.xml。它包含了整个程序的全部属性,名称、版本、版权等等。描述符文件名可以是任意的,比如flashrek.xml,但是当你用flex builder或者ADT打包编译成AIR文件的时候,它们会把它重命名为application.xml。
  阅读全文

posted @ 2007-09-10 15:35 flashlizi 阅读(883) | 评论 (0)  编辑 |

     摘要: 今天在John Grden的Blog上看到一篇关于AS3优化计算的文章:Optimizations for AS3 calculations,觉得不错,把其中的一些方法记录下来。

1、用乘法来代替除法(当除数可转化为有限数的时候)。比如var n:Number = value *0.5;要比var n:Number = value / 2;快。但差别并不是很大。只有在需要大量计算情况下,比如3D引擎中差别才比较明显。

2、用位运算代替除2或乘2。比如10>>1要比10*2快,而10<<1要比10*2快。从测试来看位运算几乎比乘除快一倍,但是一般情况下,我们不能选择位运算,比如我们就不能用13>>1来代替13/2,尽管前者比后者运算速度更快,但2者的运算结果却不一样。所以还是要看具体情况。
  阅读全文

posted @ 2007-09-10 15:34 flashlizi 阅读(444) | 评论 (0)  编辑 |

     摘要: NaN常数,是一个非常特殊的number。它表示非数字,其值为IEEE-754,但是它的数据类型是number。很自然的,大家会想到另外的常数undefined、null,不过它们确有很大的差别。  阅读全文

posted @ 2007-09-10 15:30 flashlizi 阅读(1026) | 评论 (0)  编辑 |

posted @ 2007-09-10 15:27 flashlizi 阅读(3078) | 评论 (1)  编辑 |

     摘要: 最近看了Peter的Javascript的惰性函数定义模式(Lazy Function Definition)之后,想测试下as下的这种函数模式的效率是否比一般的模式要高。不了解此函数定义模式的朋友可以看看这篇文章的翻译。我做了如下测试:  阅读全文

posted @ 2007-09-10 15:24 flashlizi 阅读(712) | 评论 (6)  编辑 |

     摘要: 本工具特点:
1、简单又方便,无需像其他debuger工具那样要在flash中添加多余的调试代码,只需简单的trace()就OK!
2、as2,as3均可调试。
3、不存在跨域、安全沙箱问题。
4、不管你的flash运行在什么程序上,浏览器还是其他应用程序。(除开AIR)都可以获取trace信息。  阅读全文

posted @ 2007-09-10 15:00 flashlizi 阅读(3100) | 评论 (4)  编辑 |