WEB开发网      濠电姷鏁告繛鈧繛浣冲洤纾瑰┑鐘宠壘閻ょ偓銇勯幇鍫曟闁稿鍠愰妵鍕冀閵娧佲偓鎺楁⒒閸曨偄顏柡宀嬬畱铻e〒姘煎灡绗戦梻浣筋嚙濮橈箓顢氳濠€浣糕攽閻樿宸ュΔ鐘叉啞缁傚秹宕滆绾惧ジ寮堕崼娑樺缂佹宀搁弻鐔风暋閻楀牆娈楅梺璇″枓閺呯姴鐣疯ぐ鎺濇晝闁靛牆妫欓蹇旂節閻㈤潧浠﹂柛銊ョ埣楠炴劙骞橀鑲╋紱闂佽宕樼粔顔裤亹閹烘挸浜归梺缁樺灦閿曗晛螞閸曨垱鈷戦柟鑲╁仜婵″ジ鎮楀☉鎺撴珖缂侇喖顑呴鍏煎緞濡粯娅囬梻浣瑰缁诲倿寮绘繝鍥ㄦ櫇闁稿本绋撻崢鐢告煟鎼淬垻鈯曢柨姘舵煟韫囥儳绋荤紒缁樼箖缁绘繈宕橀妸褌绱濋梻浣筋嚃閸ㄤ即宕弶鎴犳殾闁绘梻鈷堥弫鍌炴煕閳锯偓閺呮瑧妲愬Ο琛℃斀闁绘劕妯婇崵鐔封攽椤旇棄鍔ら摶鐐烘煕閺囥劌澧柛娆忕箻閺屽秹宕崟顒€娅g紓浣插亾濠㈣泛顑囩粻楣冩煙鐎涙ḿ绠橀柨娑樼У椤ㄣ儵鎮欓鍕紙闂佽鍠栫紞濠傜暦閹偊妲诲┑鈩冨絻椤兘寮诲☉銏犖╅柕澶堝労閸斿绱撴担绋库偓鍝ョ矓瑜版帒鏋侀柟鍓х帛閺呮悂鏌ㄩ悤鍌涘 ---闂傚倸鍊烽悞锔锯偓绗涘厾娲煛閸涱厾顔嗛梺璺ㄥ櫐閹凤拷
开发学院图形图像Flash AS3.0中的显示编程(一) -- 显示编程的基础知识... 阅读

AS3.0中的显示编程(一) -- 显示编程的基础知识

 2010-10-09 00:00:00 来源:WEB开发网 闂傚倸鍊风欢姘缚瑜嶈灋闁圭虎鍠栫粻顖炴煥閻曞倹瀚�闂傚倸鍊风粈渚€骞夐敓鐘插瀭闁汇垹鐏氬畷鏌ユ煙閹殿喖顣奸柛搴$У閵囧嫰骞掗幋婵冨亾閻㈢ǹ纾婚柟鐐灱濡插牊绻涢崱妤冃℃繛宀婁簽缁辨捇宕掑鎵佹瀸闂佺懓鍤栭幏锟�濠电姷鏁告慨顓㈠箯閸愵喖宸濇い鎾寸箘閹规洟姊绘笟鈧ḿ褍煤閵堝悿娲Ω閳轰胶鍔﹀銈嗗笂閼冲爼鍩婇弴銏$厪闁搞儮鏅涙禒褏绱掓潏鈺佷槐闁轰焦鎹囬弫鎾绘晸閿燂拷闂傚倸鍊风欢姘缚瑜嶈灋闁圭虎鍠栫粻顖炴煥閻曞倹瀚�  闂傚倸鍊烽懗鑸电仚缂備胶绮〃鍛村煝瀹ュ鍗抽柕蹇曞У閻庮剟姊虹紒妯哄妞ゆ劗鍘ч埥澶娢熼柨瀣偓濠氭⒑瑜版帒浜伴柛鎾寸☉閳绘柨顫濋懜纰樻嫼闂佸憡绋戦オ鏉戔枔閺冣偓缁绘稓浠﹂崒姘瀳闂佸磭绮幑鍥嵁鐎n亖鏀介柟閭﹀墯椤斿倹淇婇悙顏勨偓鏍ь潖婵犳艾鍌ㄧ憸蹇涘箟閹绢喗鏅搁柨鐕傛嫹
核心提示:写在前面的话:AS3.0,从大的框架来看,AS3.0中的显示编程(一) -- 显示编程的基础知识,大致可以归纳为三块内容:基础程序、显示编程、网络交互,基础程序这块,通俗的说,只要你能够看得到的东西,和其他的程序语言有较大的相通之处,是其他程序员最容易上手的部分

写在前面的话:AS3.0,从大的框架来看,大致可以归纳为三块内容:基础程序、显示编程、网络交互。基础程序这块,和其他的程序语言有较大的相通之处,是其他程序员最容易上手的部分,也是Flash的骨架;显示编程这块,是Flash独有的特色,控制了Flash的一切外观表现,是Flash的样貌;而网络交互,属于Flash的高级功能,是连接不同用户之间的桥梁,是Flash的内涵。

这一篇,我将为大家介绍有关显示编程的知识。下面我们通过比对,AS2.0和AS3.0在显示编程上的区别,来了解显示编程的基础概念。

一、显示对象类的分离

在AS2.0里,可以说,影片剪辑(MovieClip)是所有对象的元始天尊,因为所有对象的类都基于他。但是这样一来,就显得非常臃肿。即使我们只需要一个简单的矢量方块,却不得不继承影片剪辑的所有属性和方法,比如时间轴、帧频等。

在AS3.0里,把显示对象类分离开,很好的优化了该系统。显示对象的树状结构图如下:

AS3.0中的显示编程(一) -- 显示编程的基础知识

查看原图(大图)

基类(DisplayObject)包含了显示对象最基本的属性和方法,其他各个对象都是该类的子类,并且有各自特定的属性和方法。比如我们要建立一个矢量图形,就只需要创建一个Shape类就可以,这样比创建一个MovieClip类,要节约大量的内存空间和资源,有效的提高性能。

其中,我说明一下Sprite对象,该对象是AS2.0不具备的。我也不知道怎么翻译好,就直接称之为Sprite对象了。该对象和MovieClip对象的唯一区别是,该对象不包含时间轴相关的属性和方法。所以如果你需要创建一个只有一帧的影片剪辑,应当使用Sprite对象来节约资源,提高性能。

二、显示对象的展现管理

在AS2.0中,只要创建一个显示对象,该对象即是可见的(即使在舞台外,也是可见的,只是因为舞台的限制没有展现出来)。这样的话,即使有暂时不需要的显示对象,也同样需要占用处理时间来呈现。

而在AS3.0中,创建的显示对象,平时是不可见的,也不会占用处理时间来呈现。只有调用了addChild()等方法,将该显示对象添加进显示列表后,该对象才会呈现。这个也是AS3.0的一个重要的改变。

需要说明的是,直接用绘图工具在舞台上创建的对象,当创建完成后,会自动加入显示列表并展现,这个AS2.0和AS3.0是一样的。

三、改进了深度管理

在AS2.0中,采用线性深度管理的方法(Depth)。由于该方法存在断层,即不需要保持连贯性。因此给管理或者遍历都造成了相当大的麻烦。

在AS3.0中,给所有的显示对象都建立的索引列表,当你添加或者删除一个显示对象时,程序都会自动的更新该列表,因此可以方便的实现管理和遍历。(具体的方法下文会介绍)

在AS2.0里,并不是所有的显示对象都可以用程序语言访问,比如矢量形状。而在AS3.0中,可以访问显示列表中的所有对象。通俗的说,只要你能够看得到的东西,都可以用程序来进行控制。

出处:http://windtoto.blog.51cto.com/1986737/401870

Tags:AS 显示 编程

编辑录入:爽爽 [复制链接] [打 印]
赞助商链接