?Document Class,中文直譯為“文檔類”。顧名思義,就是和文檔綁在一起的類。
文檔是啥?就是要和這個(gè)類綁在一起的Fla文件。
[1b]什么用處[/1b]?
這個(gè)玩意兒根本目的就是想把AS代碼和Flash設(shè)計(jì)完全剝離。
從此,F(xiàn)la里面只管設(shè)計(jì),邏輯代碼全部由外部的類來(lái)包辦。
對(duì)于設(shè)計(jì)者和新手,黑羽可以打個(gè)比方,就好比[1b]三步走:[/1b]
1.把Fla里面所有代碼集中到第一幀,
2.再把第一幀里的代碼拷貝到外部的一個(gè)as文件里。
3.再按照AS3.0的形式,把這些代碼放到這個(gè)類的構(gòu)造函數(shù)里去。再根據(jù)這些個(gè)代碼抽出一些類的屬性和方法就OK了。
唔,這個(gè)比喻有很多小毛病。但比較直觀,比較好理解,一步步來(lái)。
等你明白有哪些小毛病了,你已經(jīng)不需要這個(gè)破比喻了。
對(duì)于程序開(kāi)發(fā)者(比如c#)
Document Class就好比一個(gè)Entry,它的構(gòu)造函數(shù)就相當(dāng)于一個(gè)main函數(shù)。
[1b]教程相關(guān)例子下載[/1b]:
[1b]點(diǎn)擊下載[/1b]
[1b]先來(lái)一個(gè)例子:[/1b]
上次建立的KingdaMC.fla和KingdaMC.as還在吧?
刪了?重來(lái)一遍吧,本次要用到fla里面的加好鏈接類的元件,以及相關(guān)的KingdaMC類文件。
[1b]我們干兩件事:[/1b]
1.新建一個(gè)Document Class類。
2.用上之前的那個(gè)Kingda.fla,綁定Document Class
[1b]1.新建一個(gè)as文件,命名為KingdaMCDocumentClass,記得要和fla在同一目錄下:
[/1b]輸入如下代碼:
//因?yàn)樵诮y(tǒng)一目錄下,所以package后面沒(méi)有路徑
package {
?? import flash.display.MovieClip;
??
?? public class KingdaMCDocumentClass extends MovieClip {
????? private var tempMC:KingdaMC; //臨時(shí)變量,持有當(dāng)時(shí)創(chuàng)建的KingdaMC的引用。
????? private var MAX_MCS:int = 10;? //最多創(chuàng)建的KingdaMC數(shù)目
?????
???? //構(gòu)造函數(shù),和類同名,在AS3.0中必須為public。不能用private,protected或者自定義的namespace
????? public function KingdaMCDocumentClass() {
???????? var i:int;? //新的數(shù)據(jù)類型int,只要是整數(shù),就請(qǐng)用int。效率快過(guò)Number。
???????? for (i = 0; i
它要干的事很簡(jiǎn)單,就是用我們之前的KingdaMC類在舞臺(tái)上創(chuàng)建十個(gè)KingdaMC實(shí)例,大小隨機(jī),位置隨機(jī)。
[1b]2.用上之前的Kingda.fla,綁定KingdaMCDocumentClass。
[/1b]確保庫(kù)中已有設(shè)好KingdaMC類鏈接的symbol。
?
設(shè)置方法如圖:
[url=/Files/BeyondPic/2006-9/10/01.gif]

點(diǎn)擊放大[/url]
先把第一幀代碼全部刪掉。Ctrl+Enter測(cè)試一把。是不是有十個(gè)MC出來(lái)啊。
然后再像圖中那樣加上第一幀代碼,和舞臺(tái)元件樂(lè)一樂(lè)。就是不按照Document Class規(guī)矩干干,呵呵。
[1b]那么它到底是什么?[/1b]
簡(jiǎn)單的說(shuō),是一個(gè)用來(lái)取代原有散亂的時(shí)間軸代碼的標(biāo)準(zhǔn)解決辦法。
當(dāng)一個(gè)Fla文件被編譯時(shí),Document Class就被主動(dòng)建立了。我們可以理解為Flash IDE偷偷加上了如下代碼:
?
?
這樣的好處是所有的時(shí)間軸邏輯都剝離到Document Class類文件中,一旦成為一個(gè)獨(dú)立的類文件,那么很方便的可以和CVS軟件結(jié)合起來(lái)。對(duì)團(tuán)隊(duì)合作(Designer + Coder)來(lái)說(shuō)是一大利好。對(duì)新手和小項(xiàng)目來(lái)說(shuō),沒(méi)什么優(yōu)點(diǎn)和必要。
本文轉(zhuǎn)自:http://www.5uflash.com/flashjiaocheng/Flash-as3-jiaocheng/1732.html
更多文章、技術(shù)交流、商務(wù)合作、聯(lián)系博主
微信掃碼或搜索:z360901061

微信掃一掃加我為好友
QQ號(hào)聯(lián)系: 360901061
您的支持是博主寫(xiě)作最大的動(dòng)力,如果您喜歡我的文章,感覺(jué)我的文章對(duì)您有幫助,請(qǐng)用微信掃描下面二維碼支持博主2元、5元、10元、20元等您想捐的金額吧,狠狠點(diǎn)擊下面給點(diǎn)支持吧,站長(zhǎng)非常感激您!手機(jī)微信長(zhǎng)按不能支付解決辦法:請(qǐng)將微信支付二維碼保存到相冊(cè),切換到微信,然后點(diǎn)擊微信右上角掃一掃功能,選擇支付二維碼完成支付。
【本文對(duì)您有幫助就好】元
