闪客帝国:教程 闪客帝国教程 zh-cn 叶子 Allan 闪客帝国 闪客帝国 <![CDATA[Flash 实用编程百例解读]]> 步骤:

1.打开Flash MX 2004,选择矩形工具,在主场景中画出下一个只有边框有矩形,本例该矩形大小为350*16像素。

2.再在主场景中仍用矩形工具画出一个只有填充而无边框的矩形,并按F8键将其转换为影片剪辑(注:其注册点一定要选在该矩形的最左侧),其实例名为bar
。本例该矩形大小为345*11像素。

3.将上述两矩形在主场景中排列好,使边框矩形嵌套填充矩形。

4.在上述两矩形旁边用文字工具拖出一动态文本框,其变量名为bar_per。


至此,准备工作就绪,即建立了两矩形框和一动态文本框,下面准备编写代码。


5.在主场景中,新建一层,选中该层第1帧,按F9键打开动作脚本编辑窗口,输入以下代码 :


this.onLoad=function(){ 

myBytesTotal=_root.getBytesTotal();

}

this.onLoad();

this.onEnterFrame=function()
{

myBytesLoaded=_root.getBytesLoaded();

bar_xscale=myBytesLoaded/myBytesTotal*100;

percent=Math.round(bar_xscale);

this.bar._xscale=bar_xscale;

this.bar_per=percent+"%";

if(myBytesLoaded==myBytesTotal){

delete this.onEnterFrame;

_root.nextFrame();

}else{

this.stop();

}

}

6.从主场景时间轴第2帧起制作你的flash影片。


注解:




this.onLoad=function(){ 

myBytesTotal=_root.getBytesTotal();

}

此段代码是指,当影片剪辑(本例指两矩形和一动态文本框所存在的主场景)加载时,读取主时间轴存在的所有元素的总字节数并赋值给变量myBytesTotal。








this.onLoad(); 

flash事件处理函数MovieClip.onLoad=function(){…}有些奇怪,其中设置的代码,若不在后面加上this.on...

完整阅读本文...]]> 2006-06-19 <![CDATA[Flex 2.0 Beta3 发布]]> B3早上发布的,与之前B2比较主要变化有:

1,Flex Builder(IDE) 添加了序列号验证.
2,包含了 Frameworks 的源代码.
3,界面设计有了很大改动.
4,所有显眼位置的 Macromedia 关键字替换成 Adobe.
5,增加了Flex Builder 扩展API
6,帮助文件模板重新设计.
7,Flash Player 8.5 变成 Flash Player 9.0
8,包含了可执行/调试版本的Flash Player 9

等等...



完整阅读本文...]]>
2006-05-10
<![CDATA[Flash小技巧之allowScriptAccess]]> 别以为嵌入Flash的html不重要,有时候小问题也会引发大"骚乱的"

比如:


    <param name="allowScriptAccess" value="sameDomain" />

使用 allowscriptaccess 使 Flash 应用程序可与其所在的 HTML 页通信。此参数是必需的,因为 fscommand()
和 getURL() 操作可能导致 JavaScript 使用 HTML 页的权限,而该权限可能与 Flash 应用程序的权限不同。这与跨域安全性有着重要关系。


也就是说如果swf在blog.80s.net.cn下,但是页面在fmail.80s.net.cn下,想用getURL或者fscommand调用页面中的js是不可以的


除非你将value设置为always


value参数说明:

always 允许随时执行脚本操作。


never 禁止所有脚本执行操作。


samedomain 只有在 Flash 应用程序来自与 HTML 页相同的域时才允许执行脚本操作。


所有 HTML 发布模板使用的默认值均为 samedomain。


PS:这小问题折腾我两小时,头疼~~~~~~


(完)



完整阅读本文...]]>
2006-04-27
<![CDATA[浅谈角色旋转的动画制作方法]]>

















完整阅读本文...]]>
2006-04-17
<![CDATA[PS随笔草地场景绘制]]> 教程原文:





(完)



完整阅读本文...]]>
2006-03-24
<![CDATA[Painter场景绘制]]> 教程原文:





(完)



完整阅读本文...]]>
2006-03-24
<![CDATA[ActionScript 3 相对于 ActionScript 2 新的特性和改动]]> 本文介绍了ActionScript 3 相对于 ActionScript 2
有哪些新的特性和改动。并在文章的最后一步步的教大家如何利用 Flex Builder 来编译并运行第一个 AS3 程序。



语法方面的增强和改动:





  • 引入了 package(包) 和 namespace(命名空间) 两个概念。其中 package
    用来管理类定义,防止命名冲突,而
    namespace 则用来控制程序属性方法的访问。


  • 新增内置类型 int (32比特整数),uint(非负32比特整数),用来提速整数运算;


  • 新增 * 类型标识,用来标识类型不确定的变量,通常在运行时变量类型无法确定时使用。在 AS2 中这种情况下需要用
    Object 赖作为类型表识;


  • 新增 is 和 as 两个运算符来进行类型检查。其中 is 代替 AS2 中的 instanceof
    来查询类实例的继承关系,而 as 则是用来进行不抛错误的类型转换。


  • 新增 in 运算符来查询某实例的属性或其prototype中是否存在指定名称的属性。


  • 新增 for each 语句来循环操作 Array 及 Object实例。


  • 新增 const 语句来声明常量。


  • 新增 Bound Method 概念。当一个对象的方法被付值给另外一个函数变量时,此函数变量指向的是一个 Bound
    Method,以保证对象方法的作用域仍然维持在声明此方法的对象上。这相当于 AS2 中的 mx.util.Delegate 类,在 AS3
    中这个功能完全内置在语言中,不需要额外写代码。


  • AS3 的方法声明中允许为参数指定默认值(实现可选参数)。


  • AS3 中方法如果声明返回值,则必须明确返回。


  • AS2 中表示方法没有返回值的 Void 标识,在 AS3 中变更为 void。




OOP方面的增强



通过类定义而生成的实例,在 AS3 中是属于 Sealed 类型,即其属性和方法无法在运行时修改。这部分属性在 AS2
中是通过类的
prototype 对象来存储,而在 AS3 中则通过被称为 Trait 的概念对象存储管理,无法通过程序控制。这种处理方式一方面减少了通过
prototype 继承链查找属性方法所耗费的时间(所有父类的实现方法和属性都会被直接复制到对应的子类的 Trait
中),另一方面也减少了内存占用量,因为不用动态的给每一个实例创建 hashtable 来存储变量。如果仍然希望使用 AS2
...

完整阅读本文...]]> 2006-03-03 <![CDATA[ActionScript扫盲]]>   随着AS3规范的推出,很多Flash Developer也越来越想了解AS3,我的这篇文章应该可以在各位仔细观看AS3规范之前对ActionScript有一个扫盲级的了解,虽然是扫盲级,但是也不是类似于“hello!World”类型的文章,看了你就知道了。

Action Script
Action Script简称为AS,是Flash产品平台的脚本解释语言。该语言可以实现Flash中内容与内容,内容与用户之间的交互。AS的解释工作由Action Virtual Machine(AVM)来解释,AVM可以称之为AS虚拟机,类似于JVM,AVM是Flash Player播放器中的一部分。AS语句要想起作用是要通过Flash创作工具或Flex服务器将其编译生成2进制代码格式方可,而编译过的2进制代码格式将成为SWF文件中的一部分,被Flash播放器执行。AS1.0起源于ECMAScript标准,由于ECMA的语法的兼容性和Flash Player播放器的大小和渲染引擎的需要,AS可以称之为是语法来源于ECMAScript。

  说到AS不得不说Flash4的AS集合,它曾经让Flash4兼容格式的内容变化多端。但是从一定程度上,Flash4的AS不能称之为成熟的并且为开发者所承认的脚本语言集合。它的语法方式完全不同于ECMAScript。虽然我们可以在Flash5的时代可以向它添加一些ECMA效仿的语句上去,但是AS在Flash4中是完全于ECMAScript标准相左的。现在Flash4的AS仍然可以被应用在Flash Lite1.1的内容之上。

  AS1.0是从Flash5的时代诞生的,这时的版本就已经具备了ECMAScript标准的语法格式和语义解释。尽管后来的Flash Player5/6的播放器版本(Build)的一再更新,使得越来越多的ECMA语法和语义被纳入到AS1.0的API当中去,但是核心语言的编译处理及表现方式都是延续了Flash5的AS1.0的标准。甚至于到后来的Flash7,对于AS1.0的核心解释机制,仍然与Flash Player5有着很多相同之处。

  AS2.0是在MX时代被慢慢引入的,而在MX 2004版本被开发者全面采纳。AS2.0的运行则是完全在Flash Player6以上的版本中才具备的机制。AS2.0在Flash6中都可以运行,是因为AS2.0语句在运行时(runtime)环境下仍然采用了AS1.0的模型。这也是骨子里为什么AS2.0的运行性能并不比AS1.0优秀的重要原因。AS2.0的编写方式则是更加成熟,引入了面向对象编程的方式,并且有良好的类型声明,而且分离了运行时和编译时的异常处理。AS2在格式上遵从了ECM...

完整阅读本文...]]> 2006-03-02 <![CDATA[ActionScript 3.0 语言规范发布]]>
点击查看

完整阅读本文...]]>
2006-03-02
<![CDATA[Flash Lite 2.0 新功能介绍]]>

以下是 Flash Lite 2.0 支持的新功能.
1,支持 ActionScript 2.0
该和Flash 4的AS语法(tellTarget)说再见了,现可用流行的点语法和OOP方法编程.

2,视频回放
Flash Lite 2 的视频回放是基于手机自身的视频渲染程序
就是说只要是手机支持的视频格式(3gp,mpg),就都可以在Flash中播放,这点比PC上更好.

3,解析外部XML
可使用Flash 7(MX2004)的XML对象,访问和解析外部XML文件.

4,本地数据访问
可以在手机上保存文件了,即使用本地共享对象(SharedObject)

5,载入外部图片和声音
从本地或网络上载入图片和声音文件(JPEG,MP3)

6,动态文本支持中文了(7yue 补充).

Flash Lite Player 2 启动要花掉 750k 到1M 系统内存
为了达到最佳性能表现,官方建议大家在运行FL2时,尽量少运行过多其他的应用程序.
像较早推出的一些Nokia智能手机,由于硬件配置低,已经和Flash Lite 2无缘了

按本文截至日期,目前支持 Flash Lite 2.0 的手机型号如下:
Nokia 3230
Nokia 6260
Nokia 6620
Nokia 6630
Nokia 6670
Nokia 6680
Nokia 6681
Nokia 6682
Nokia 7610
Nokia N70
Nokia N90

支持 Flash Lite 1.0 和 1.1 的设备如下:
http://www.macromedia.com/mobile/supported_devices/handsets.html

以下是 Flash Lite 2.0 还不支持的功能:

1,XMLSocket
2,Flash Media Server(Flash COM,FCS,FMS)通讯
3,远程共享对象 (Remote shared objects)
4,播放自己的视频格式(FLV)
5,AMF(Flash Remoting)
6,层叠样式表(CSS)
7,设备字体蒙罩
8,高质渲染圆滑的位图



完整阅读本文...]]>
2006-01-16
本页面由 Flash 保存计划 从 Internet Archive 存档还原 · 快照 2006-06-19 · 原址 http://www.flashempire.com/include/rss/rssTutor.php ← Flash 保存计划