- 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
- 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
如何创建flashMX组件
如何创建flashMX组件
Flash MX引用了我们在VB程序中熟悉的组件概念(功能相似在VB中称为控件),替代和扩展了Fash5中的智能剪辑(SmartClip),在FlashMX中有一个新的组件面板(Component Panel)定制了一些常用的组件 ,比如列表框(listboxes,)滚动条(scrollbars), 单选按纽(radio buttons), 复选框(combo boxes),等等我们在Html文件中常用的功能元件,对于广大的flash开发者来说是一个不错的福音,定制的常用组件不仅减少了开发者的开发时间,提高了工作效率,而且能给flash作品带来统一的工业化的界面。
什么是组件? 什么是组件?笔者实在是很难给组件概念下一个全面正确的定义,FlashMX的的组件概念是由flash的智能剪辑延伸而来的,比较各种FlashMX中内建的常用组件,可以归纳以下特点:
拥有某种功能的电影剪辑
有参数变量(属性),改变参数来改变组件的属性
参数改变的情况下,组件的功能不变
能够重复应用和改变组件的外观(skins) flashMX中内建了一些常用的组件,作为广大flash开发者的共有资源,当然你也可以自己创建自己的组件,做为第三方开发者,你也可以共享他人的组件资源,你只要拿来用就可以。为了组件适合自的开发环境,你可以改变组件的一些参数,比如一个拨盘组件(dial Components) 你所能拨指针的范围(最大值和最小值)是一个可调的参数。从广义上说,组件是用户化的可ActionScript控制的动画。 我们可以用属性监视面板(property inspector)来“监视”组件 只要你选中了场景的组件实体,在属性面板上就显示该组件对应的参数(属性),通过改变这些参数你可以“个性化”你的组件。
实例说明 为了演示如何创建一个组件,我们来创建一个简单的等腰三角形状的组件,这个组件包括如下属性:底长,高,填充色以及是否显示填充色布尔值,也可以得到和获得这个组件的一些属性,比如面积。 有的朋友可能会问创建一个三角形状的组件有什么用?我们可以用它来做什么? FlashMX中自带的一些组件都能实现某一功能,比如列表框(listboxes,)可以做一个列表,滚动条(scrollbars)能实现IE浏览器中滚动的功能。我们创建的这个组件笔者现在也不知道可以用来干什么,不过 ,创建这个三角行状的组件的方法是和任何其他组件是相同的,笔者只想通过这个例子来说明自定义组件的原理和方法。
操作步骤
1. 创建一个三角形状电影剪辑
新增一个电影剪辑(Ctrl+F8)画一等腰三角形图形,高和底边宽均为100px,并使图形的中心坐标(电影剪辑舞台的中心点)在底边上的中点重合,这样图形的大小变化就基于底边。
2 定义组件类 这是自定义组件的关键,FlashMX新增加了自定义组件的函数#initclip #endinitclip和方法Object.registerClass(),大家可能对这些函数和方法感到陌生 。不过没有关系,我们先来看下面一段代码:
#initclip
function TriangleClass this.cobj new Color this ;
this.update ; // Allow TriangleClass to inherit MovieClip properties
TriangleClass.prototype new MovieClip ;
// Update draws the triangle at the current base and height values.
TriangleClass.prototype.update function if this.applyTint this.cobj.setRGB this.tcolor ; this._xscale 10 * this.tbase;
this._yscale 10 * this.theight; // Connect the class with the linkage ID for this movie clip
Object.registerClass FTriangle, TriangleClass ;
#endinitclip 注意这段代码是是“捆绑”在三角形电影剪辑内部的第一桢上的。看到上面的代码你可能不明白,没有关系,说实话笔者看FashMX的联机的帮助文件的相关内容看了半天也不知道意思。要明白这段代码的意义,我们先必须熟悉一些面对对象语言的知识。如果你熟悉一些面对对像编程语言,比如Java C/C++,Javascript,应该知道类(cla
文档评论(0)