第7章 AS3.0显示编程
第7章 AS3.0显示编程 ActionScript 3.0的显示功能有了很大的革新, 原有的显示结构发生了重大的改变。对于熟悉了 ActionScript以前版本中MovieClip影片剪辑控制 和使用的AS程序人员来说,这次革新将导致一个 新的学习过程。ActionScript 3.0显示编程的内 容主要是关于如何使用ActionScript来生成和控 制各种图形、动画等显示对象。显示对象通常指 的是显示在Flash Player舞台上的可视化的对象。
7.1 显示对象简介 显示对象(Display Object),指的是可以在舞 台显示的一切对象,包括可以直接看得见的图形、 动画、视频、文字等,也包括一些看不见的显示 对象容器。在ActionScript 3.0中,任何的复杂 的图形都是由显示对象和显示对象的容器共同构 成。
7.1.1 AS3.0中显示对象的等级结构 编译完成的SWF文件,以最根部的stage(舞台)为基础,展现出不同的显 示效果。利用ActionScript 3.0构建的Flash播放文件都有都有一个由显 示对象构成的层次结构,这个结构称为“显示列表”。这个显示列表按照 一定的等级和层次在舞台上显示出来,构成复杂的显示对象。 ActionScript 3.0 支持的显示对象的结构类似于“树状结构”,以舞台 为根,SWF文件为干,显示对象为枝叶。具体结构见图所示。
7.1.2 显示对象的种类 在ActionScript3.0中,所有的显示对象都属于同 一个类:DisplayObject类。所有的显示对象都是 其子类。本节将对显示对象的种类进行简单的介 绍,并且进行简要的分类。 1.显示对象的具体种类 2.显示对象分类
7.1.3 显示列表 在前文中已经说到,ActionScript 3.0支持的显示对象的结构类 似于“树状结构”,这上面的所有的显示对象和容器,就构成了 显示列表。显示列表是ActionScript 3.0中的一个新概念。显示 列表就是一个显示对象的清单,只要在Flash Player中显示出来 的对象,都是该显示列表中的内容。 在ActionScript 3.0中,显示对象能否显示出来,取决于是否加 入了显示列表。如果加入了显示列表,该对象就会被显示出来; 否则,即使该对象已经被创建,也不能被显示出来。 ActionScript3.0显示列表进行了以下方面的改进,具有明显的优 点。 1.呈现方式更为有效且文件较小,有效的提高了性能。 2.改进的深度管理,使层级管理更加容易 3.完整遍历显示列表,使对象的访问更方便 4.列表外的显示对象,方便了显示对象的管理 5.更便于创建显示对象的子类,创建可视化对象更容易
7.2 显示对象的一些基本概念 在舞台上看到的显示对象,都有它们各自的属性, 如位置、大小、透明度等等。这些属性都来自于 显示对象的基
类DisplayObject,该类总结了大部 分显示对象的共有的特征和行为。特征对应于显 示对象的属性,行为对应于显示对象的方法。 在ActionScript 3.0中,DisplayObject类共有25 个属性,6个方法和6个事件。下面将简单介绍一 些常用的属性和方法,对于复杂的应用,将在后 面的章节结合具体的实例讲解。
7.2.1 显示对象的常见属性 显示对象的属性共有25个,本节将介绍常用的一些基本属性。 (1)横坐标x:显示对象注册点距离自己父级容器注册点之间的水平距离, 以象素为单位。如果父容器是舞台,那么就是自身注册点与舞台原点间的 水平距离。 (2)纵坐标y:显示对象注册点与父级容器注册点之间的竖直距离,以象 素为单位。若父容器为根对象root,则为自身注册点与舞台原点之间的竖 直距离。 (3)宽度width:显示对象最左边到最右边之间的距离,以象素为单位。 (4)高度height:显示对象最上边到最下边之间的距离,以象素为单位。 (5)横向缩放比例scaleX:一个比例值,0~1之间的数字。控制显示对 象的横向缩放比例。 (6)纵向缩放比例scaleY:一个比例值,0~1之间的数字。控制显示对 象的纵向缩放比例。 (7)鼠标横向横坐标mouseX:鼠标相对于当前显示对象注册点之间的水 平距离。 (8)鼠标横向纵坐标mouseY:鼠标相对于当前显示对象注册点之间的竖 直距离。
7.2.1 显示对象的常见属性 (9)顺时针旋转角度rotation:显示对象绕轴点顺时针旋转的角度。0~180度表示 顺时针旋转角度,0~-180度表示逆时针旋转角度。如果超过了这个范围,则自动减 去360的整数倍。 (10)透明度alpha:0~1之间的值,0表示完全透明,1表示完全不透明。 (11)可见性visible:Boolean值,用于控制显示对象是否可见。true表示将对象显 示,false表示不显示对象。但不管设置成何值,该显示对象始终位于显示对象列表 中。 (12)遮照mask:持有的引用是用来遮照的显示对象。 (13)显示对象名字name:通常生产显示对象时,会分配默认的名字。若有需要,可 以使用代码进行修改。 (14)父容器parent:在显示列表中每个显示对象都有其父容器。parent属性指向显 示对象的父容器,若显示对象不在父容器,则该属性为null。 (15)根对象root:返回SWF文件主类的实例。若显示对象不在父容器,则该属性为 null。 (16)舞台stage:该属性持有的引用指向该显示对象所在的舞台。每个Flash程序, 都有一个舞台。 除了以上的16个属性之外,DisplayObject对象还有9个属性,分别为:loaderInfo、 cacheASBitmap、filters、scale9Grid、blendMode、accessibilityProperties、 opaq
ueBackground、scrollRect和transform。这些属性在后面的章节中根据需要进 行讲解。
7.2.2 显示对象的方法 显示对象的基本方法有6个,常用的方法如下: (1)getBounds()方法:返回一个矩形区域,该矩形定义 相对于显示对象所在坐标系的显示对象区域。 (2)getRect()方法:返回一个矩形区域,该矩形定义相 对于显示对象所在坐标系的显示对象区域,注意该区域不 包含形状上的笔触宽度。 (3)hitTestObject()方法:返回一个Boolean值,若为 true,表示两个对象重叠或相交,否则为不相交。 (4)hitTestPoint()方法:返回一个Boolean值,若为 true,表示该对象对应点重叠或相交,否则为不相交。
7.2.3 显示对象的事件 显示对象的事件有6个,常见的如下: (1)added事件:将显示对象添加到显示列表中时会调度该时间。下面的两种方法会 触发此事件:将显示对象添加到容器、将显示对象添加到容器的某一层次。 (2)addedToStage事件:将显示对象直接添加到舞台显示列表或将包含显示对象的 子对象添加至舞台显示列表中时会调度该事件。下面的两种情况下会触发此事件:将 显示对象添加到容器、将显示对象添加到容器的某一层次。 (3)removed事件:要从显示列表中删除显示对象时会调度该事件。以下两种情况下 会生成此事件:将显示对象容器的某个显示对象删除、将显示对象容器中的某个层次 的显示对象删除。 (4)removedFromStage事件:要从显示列表中删除显示对象或者删除包含显示对象 的子对象时会调度该事件。以下两种情况下会生成此事件:将显示对象容器的某个显 示对象删除、将显示对象容器中的某个层次的显示对象删除。 (5)enterFrame事件:播放头进入新帧时调度该事件。若播放头不移动,或者只有 一帧,则会继续以帧频调度此事件。 (6)render事件:在显示器述评之前调度该事件。当使用render事件的显示对象进 入舞台时,或者显示对象存在于显示列表时才会触发该事件。要保证render事件在当 前帧触发,必须调用stage.invalidate()。
7.3 管理显示对象 显示对象只有显示在屏幕之上,才能达到要实现 的效果。 …… 此处隐藏:3627字,全部文档内容请下载后查看。喜欢就下载吧 ……
相关推荐:
- [教育文库]夜场KTV服务员的岗位职责及工作流程[1]
- [教育文库]企划、网络、市场绩效考核方案
- [教育文库]学党史、知党情、强党性--“党的基本理
- [教育文库]2016年高考物理大一轮总复习(江苏专版
- [教育文库]干部廉洁自律自查自纠的报告
- [教育文库]2010年北京大学心理学系拟录取硕士研究
- [教育文库]资金时间价值练习题及答案
- [教育文库]保护环境的心得体会
- [教育文库]英语角内容:英语趣味小知识
- [教育文库]档案收集与管理工作通知
- [教育文库]劳动规章制度范本范本
- [教育文库]高考物理一轮复习课后限时作业1运动的
- [教育文库]机械工艺夹具毕业设计195推动架设计说
- [教育文库]通用技术教学比赛说课稿2
- [教育文库]2018年四年级英语下册 Module 7 Unit 2
- [教育文库]第2章 宽带IP网络的体系结构
- [教育文库]九年级化学第五单元课题3《根据化学方
- [教育文库]小学英语六年级情态动词用法归纳
- [教育文库]甲级单位编制窑井盖项目可行性报告(立
- [教育文库]2016-2021年中国城市规划行业全景调研
- 高考英语听力十大场景词汇总结
- 全省领导班子思想政治建设座谈会会议精
- 人教版新课标高一英语提优竞赛试题 下
- 江西省2014年生物中考试题
- 长沙镇食品药品安全事故应急预案
- 《金刚石、石墨和C60》片段教学设计
- 福州教育学院(王旭东)
- 基于EDA音乐播放器的设计
- 9、古诗两首《夜书所见》《九月九日忆
- 小学语文课外阅读有效策略探讨
- 贵州文化产业发展成支柱产业的问卷调查
- 膀胱类癌的诊治体会(附3例报告)
- 发动机积碳产生的原因
- Configuring Code Composer Studio for
- 学生良好的心理素质如何培养点滴谈
- 46 电沉积法制备锂离子电池用硅-锂薄膜
- 美舍雅阁公司管理中各部门职责
- 去壳剥皮的小妙招
- 六自由度运动平台的仿真研究
- Pride and Prejudice(傲慢与偏见)




