Flash CS3 组件开发教程

| |
[2007/06/18 20:23 | 分类: Flash技术 | by gdgzboy ]
[此文来源于互联网,牛C网只负责收集整理]

【教程说明】:
应云开等朋友的要求,我今天把组件开发过程整理一下,写成这篇教程。通过此篇教程你可以大致了解Flash 组件开发整个过程,希望对那些想自己开发Flash 组件的朋友有所帮助。我这次主要开发Flash 代码组件,甚至其他Flash 组件,你可以自行研究或和我一起讨论。

【前提条件】:
1.安装了Flash CS3软件;
2.安装了Adobe Extension Manager 1.8 扩展管理器,如果没有请先到http://www.adobe.com/cn/exchange/em_download/下载;

【开发教程】:
1.首先准备一个18x18的png 图片,用来做Flash 组件的图标。(我会在下面打包文件中提供一个png 图片)
2.写一个StringUtilComponent 组件类,我的组件都没有去继承系统组件类(UIComponent),而是直接继承Sprite 类。

package com.klstudio.components {
    
    import flash.display.*;
    
    import com.klstudio.util.StringUtil;
    
    //命名空间;
    use namespace klstudio_internal;
    
    //设置组件图标;
    [IconFile("StringUtilIcon.png")]
    
    public class StringUtilComponent extends Sprite{
        //定义组件显示框;
        //组件里已有的显示元素必须用命名空间作开头;
        klstudio_internal var boundingBox_mc:MovieClip;
        //定义LRC解析器;
        private var util:StringUtil;
        public function LRCParserComponent(){            
            //移除组件显示框;
            boundingBox_mc.visible = false;
            addChild(boundingBox_mc);
            boundingBox_mc = null;            
        }        
    }    
}

这个组件用到的StringUtil 类,我之前已经提供过的“[AS3]StringUtil类”。这里要注意一下,组件内所包含的显示元素一定要用命名空间来做前缀(就是上面“use namespace klstudio_internal;”代码),下面就命名空间定义变量。如果不加的话,就无法直接对boundingBox_mc 显示元素操作(这一点和原来Flash 组件开发不同的地方,原来是可以直接使用的),否则编译时就会报错。

/**
* ...
* @author Kinglong
* @version 0.1
*/
package com.klstudio.components {
    public namespace klstudio_internal = http://www.klstudio.com/;
}

3.建立一个StringUtil.fla 文件,类型当然是选择“Flash File(ActionScript3)”。

4.建立一个MovieClip 元素,命名为“StringUtil”;然后按照下图所示设置Class 路径。

Flash CS3 组件开发教程

5.再建立一个新的MovieClip 元素,命名为“boundingBox_mc”,用来做组件显示框。    

Flash CS3 组件开发教程

6.然后将boundingBox_mc 放到名叫“StringUtil”的MovieClip 元素里,同时按下图所示将名字已经设置成“boundingBox_mc”。

Flash CS3 组件开发教程

7.接下来开始定义组件了,设置Class 类路径、提示信息等选项。再点击组件图标选择之前png 图片。

Flash CS3 组件开发教程

Flash CS3 组件开发教程

Flash CS3 组件开发教程

8.如果图标不能像下图所示的话,请按第4步重新确认一下就可以了。

Flash CS3 组件开发教程

9.然后就是把这个StringUtil 组件打包成SWC 文件(其实就是一个zip 压缩文件格式)。

Flash CS3 组件开发教程

10.到第9步组件就算做成功了,但要发布给别人用的话,就可以把swc 文件打包成mxp 文件了,而打包之前首先要配置StringUtil.mxi 文件(这个文件就是xml 文件格式),内容如下:

<macromedia-extension
name="StringUtil"
version="1.0"
type="Flash component"> <!-- Describe the author -->
<author name="Kinglong" />
<!-- List the required/compatible products -->
<products>
<product name="Flash" version="9" primary="true" />
</products>
<!-- Describe the extension -->
<description>
<![CDATA[
StringUtil类<br>
有关String工具类。
]]>
</description>
<!-- Describe where the extension shows in the UI of the product -->
<ui-access>
<![CDATA[
This StringUtil Component is accessed by choosing Window > Components > StringUtil.
]]>
</ui-access>
<!-- Describe the files that comprise the extension -->
<files>
<file name="StringUtil.swc" destination="$flash/Components" />
</files>
</macromedia-extension>

官方提供有关mxi 文件格式说明:mxi_file_format.pdf

11.如果你已经安装了 Adobe Extension Manager 1.8 扩展管理器的话,你可以直接双击StringUtil.mxi 文件来生成StringUtil.mxp 文件。或者你先打开 Adobe Extension Manager 1.8 扩展管理器选择“文件”-“将扩展打包...”,选择StringUtil.mxi 文件,然后生成StringUtil.mxp,到这里就贺喜你了,你的Flash CS3 组件开发完成了!

    

            


作者:gdgzboy@牛C网
地址:http://www.niuc.net/post/1974/
版权所有。转载时必须以链接形式注明作者和原始出处及本声明!



评论(0) | 引用(0) | 阅读(195)
发表评论
昵称 [注册]
密码 游客无需密码
网址
电邮
打开HTML 打开UBB 打开表情 隐藏 记住我