电竞比分网-中国电竞赛事及体育赛事平台

分享

ActionScrip教程

 昵稱7591027 2011-08-28
ActionScript是一種編程語言,F(xiàn)lash專用。在學(xué)習(xí)前我們先把FLASH給整理下,弄清結(jié)構(gòu)、路徑、對象等基本常識(shí)后再學(xué)習(xí)有事半功倍之效。本次教學(xué)面向?qū)W完初中級(jí)對FLASH大部分功能已經(jīng)相當(dāng)熟悉并對語言有初步的接觸和學(xué)習(xí)愿望的朋友。

    所謂動(dòng)作語言,就對FLASH說的話,讓它按我們說的話去做,當(dāng)然我們說的中國話它是看不懂的,要學(xué)AS語言才能和它交流,就像出國要講外語和鳥要說鳥一語一樣,F(xiàn)LASH只能明白AS語言表達(dá)的意思。

    (一)FLASH動(dòng)畫結(jié)構(gòu)和播放順序:

    一個(gè)FLASH動(dòng)畫是由場景、打散圖、元件構(gòu)成,元件又分電影元件,按鈕元件,圖形元件,每個(gè)場景和元件都有自己的時(shí)間軸。播放順序是從第一個(gè)場景上主時(shí)間軸第1幀放到最后1幀放完后接著下一個(gè)場景,全放完后重復(fù)播放,在播放到有元件的幀時(shí),同是也會(huì)播放元件內(nèi)部時(shí)間軸上所有幀內(nèi)容。

    注:如果幀上電影元件內(nèi)部有10幀長度內(nèi)容,那么在場景上存放這個(gè)電影元件的關(guān)鍵幀后面應(yīng)該保留10幀才能放全。如果保留多了,則電影元件內(nèi)部時(shí)間軸會(huì)重復(fù)播放,保留少了則沒放完就結(jié)束了。但場景如果只有1幀是特例,它會(huì)停止在這1幀上,這樣可了理解等同于保留幀數(shù)無限長。

    (二)FLASH動(dòng)畫中語言是在哪里應(yīng)用:

    在FLASH中,幀、電影元件、按鈕元件是可以選定后給于動(dòng)作語言,而其它對象如圖形元件和打散后圖都是不可以設(shè)置動(dòng)作語言的也不可以被語言調(diào)用和控制的??杉诱Z言對象里其中電影元件和按鈕元件是可以設(shè)實(shí)例名,方便幀上或其它元件上的動(dòng)作語言調(diào)用或控制。由此看在FLASH動(dòng)畫中電影元件是使用最多,最活躍的元素。此外還有動(dòng)態(tài)文本框和輸入文本框這兩個(gè)特殊對象,它們也可以設(shè)置實(shí)例名用于幀上或元件上語言調(diào)用與控制,還可以設(shè)置變量,方便語言動(dòng)態(tài)管理它的內(nèi)容。但這兩個(gè)對象本身是不可以承載動(dòng)作語言的。

    對癥用藥,用在按鈕上的觸發(fā)事件動(dòng)作如:on (release),就不能用在幀上或元件上,它們不是按鈕無法偵聽到這個(gè)動(dòng)作一用就出錯(cuò)。同樣用在電影元件上觸發(fā)事件動(dòng)作如:onClipEvent(enterFrame)不能用在幀上或按鈕上。

    注:on (release)是響應(yīng)釋放鼠標(biāo)左鍵而產(chǎn)生的事件,也就是當(dāng)鼠標(biāo)點(diǎn)按鈕松開后就執(zhí)行后面大括號(hào){}里的語句命令集。至于onClipEvent(enterFrame)事件會(huì)隨著影片的播放而不斷發(fā)生,影片每前進(jìn)一幀,影片剪輯就會(huì)觸發(fā)執(zhí)行一次enterFrame后面大括號(hào)內(nèi){}語句命令集。也就是說當(dāng)主場景中以1秒12幀的速度播放里,在時(shí)間軸上的電影元件內(nèi)部如果有這個(gè)語言事件的話,將會(huì)以每秒12次的速度反復(fù)執(zhí)行{}內(nèi)的語句。

    (三)關(guān)于路徑的認(rèn)識(shí)與正確書寫:
    
    下面我繪了一個(gè)示意圖方便我們了解路徑關(guān)系,如圖所示:
    (路徑就是指各個(gè)對象的位置,有相對路徑和絕對路徑,初學(xué)者適宜用絕對路徑不容易錯(cuò),繁一點(diǎn)但好理解)

按此在新窗口瀏覽圖片

    點(diǎn)語句(.)容易讓初學(xué)者感到摸不著頭腦,別看它不起眼,用的卻非常頻繁,它的作用通常兩個(gè)。第一,它可以用來定位某一個(gè)影片剪輯,例如上圖中如果在場景一中的幀上寫語言來定位AA元件就要寫成_root.元件1.AA,這個(gè)語句就代表主事件線上實(shí)例名為元件1的影片剪輯中實(shí)例名為AA的影片剪輯,比較拗口,其實(shí)我們?nèi)绻堰@個(gè)小點(diǎn)練成“中的”,問題就很清楚了。 還可以用點(diǎn)(.)來設(shè)置元件的各種屬性,如AA._ALPHA=80;就是把AA元件的透明度設(shè)為80%的意思。反過來再看上圖,我們?nèi)羰且贐B元件上寫語句來定位調(diào)用元件2,應(yīng)該這樣寫this._parent._parent._parent.元件2。這就是相對路徑的描述,意思是本元件父一級(jí)(AA),再父一級(jí)(元件1),再父一級(jí)(場景_ROOT)下面的元件二。

    注:_root是指當(dāng)前主場景上的時(shí)間軸,this是本地意思,_parent是父一級(jí)的意思??赡芸吹竭@么多英文有人覺得記不住,沒事???,我只要你們認(rèn)識(shí)就行了,不必要記住每個(gè)命令拼寫,在實(shí)際運(yùn)用中,都是可以查找插入的,只要你認(rèn)識(shí)并明白意思就行了。

    本課練習(xí):寫出在場景一幀上對下面元件1、元件2、AA、BB四個(gè)元件引用的路徑。

              在四個(gè)元件下,分別寫出對其它元件引用路徑。

              記憶:on (release)、onClipEvent(enterFrame)、.、_root、_parent、this六個(gè)命令的意思以及用法,以后會(huì)經(jīng)常用到才能消化,先強(qiáng)記得。

    最后說明

    1)所謂絕對路徑是指從根部指向任何一個(gè)目標(biāo)的路途描述,在FLASH中根部就是場景時(shí)間軸(_root)。換句話說在場景幀上寫路徑時(shí),絕對路徑=相對路徑,也就是_root=this。

    2)所謂相對路徑就是指從當(dāng)前位置出發(fā)指向任何一個(gè)目標(biāo)的路途描述,父一級(jí)就寫._parent,子一級(jí)就寫.元件實(shí)例名,本地描述就是this。

    3)本課路徑中的元件名均指元件在場景中或其它元件中的實(shí)例名,并不是指元件在庫中的名稱。實(shí)例名和庫中名稱可以起一樣的,也可以不一樣,AS語言中只能調(diào)用實(shí)例名。

    4)元件的實(shí)例名可以起中文,也可以起英文或英文+數(shù)字。請注意不能起數(shù)字開頭的名子,更不能是純數(shù)字,最好也別用符號(hào),很多符號(hào)在語言中是有特別意義,還有要注意實(shí)例名中不能包含空格。最后AS語言中保留字也不能起,如IF,AND,THIS等這些語言中特別意義的單詞也是不能起做實(shí)例名和變量名的。有人說我怎么知道哪些是系統(tǒng)保留字呢,這個(gè)不用你們煩,如果你起了系統(tǒng)保留字,當(dāng)時(shí)電腦就會(huì)跳出對話框提醒并阻止你明顯不規(guī)范的命名。
 
場景1里,元件1、元件2、AA和BB的路徑:

_root.元件1

_root.元件2

_root.元件1.AA

_root.元件1.AA.BB

問題1:如果是在場景1的幀里引用路徑,“_root”是否可以省去不寫?


元件1里,元件2、AA、BB的路徑:

this._parent.元件2

this.AA

this.AA.BB

元件2里,元件1、AA、BB的路徑:

this._parent.元件1

this._parent.元件1.AA

this._parent.元件1.AA.BB

AA里,元件1、元件2、BB的路徑:

this._parent

this._parent._parent.元件2

this.BB

BB里,元件1、元件2、AA的路徑:

this._parent._parent

this._parent._parent._parent.元件2

this._parent

上面所寫的路徑,有些,如果只要絕對路徑,不要相對路徑的話,可以直接按場景里的路徑引用,即“_root.****”。

問題2:上面所寫的路徑里,“this”是否可以省略不寫?

    本站是提供個(gè)人知識(shí)管理的網(wǎng)絡(luò)存儲(chǔ)空間,所有內(nèi)容均由用戶發(fā)布,不代表本站觀點(diǎn)。請注意甄別內(nèi)容中的聯(lián)系方式、誘導(dǎo)購買等信息,謹(jǐn)防詐騙。如發(fā)現(xiàn)有害或侵權(quán)內(nèi)容,請點(diǎn)擊一鍵舉報(bào)。
    轉(zhuǎn)藏 分享 獻(xiàn)花(0

    0條評(píng)論

    發(fā)表

    請遵守用戶 評(píng)論公約

    類似文章 更多