ActionScript編程基礎(chǔ)--學(xué)習(xí)筆記_第1頁(yè)
ActionScript編程基礎(chǔ)--學(xué)習(xí)筆記_第2頁(yè)
ActionScript編程基礎(chǔ)--學(xué)習(xí)筆記_第3頁(yè)
ActionScript編程基礎(chǔ)--學(xué)習(xí)筆記_第4頁(yè)
ActionScript編程基礎(chǔ)--學(xué)習(xí)筆記_第5頁(yè)
已閱讀5頁(yè),還剩13頁(yè)未讀, 繼續(xù)免費(fèi)閱讀

下載本文檔

版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)

文檔簡(jiǎn)介

1、一、注釋/ 單行注釋符/* */ 多行注釋符/*開始,*/結(jié)束 二、轉(zhuǎn)義字符轉(zhuǎn)義序列bfnrt字符退格符(ASCII8)換頁(yè)符(ASCII12)換行符(ASCII10)回車符(ASCII13)制表符(ASCII9)雙引號(hào)單引號(hào)反斜杠例1:trace(Hellon+ActionScript+2.0) 字符串之間使用運(yùn)算符+連接結(jié)果輸出:HelloActionScript2.0實(shí)例:獲得系統(tǒng)的事件2:var time = new Date();/創(chuàng)建Date類的實(shí)例(Date類的實(shí)例含系統(tǒng)時(shí)間的所有信息);注意var中的字母v是小寫的。var yy = time.getFullYear();var

2、 mm = time.getMonth()+1;/*getMonth比較特殊,它返回的值是0-11之間的數(shù)值,所以必須要加上1*/var dd = time.getDate();var xq = time.getDay(); /返回值為0,周末var hh = time.getHours();var min = time.getMinutes();var ss = time.getSeconds();trace(yy+年/n+mm+月n+dd+日n+星期+xq+n+hh+點(diǎn)n+min+分n+ss+秒)/換行符號(hào) 必須在引號(hào)里邊才可以a=yy+年+mm+月+dd+日+星期+xq+hh+點(diǎn)+min

3、+分+ss+秒三、聲明方式及獲取類型1.變量的聲明方式,數(shù)字于字符串?dāng)?shù)字相加的規(guī)則數(shù)字聲明的方式var a:String=12 ; /聲明變量a是一個(gè)字符串類型,為12var b:Number=34 ; /聲明變量b是一個(gè)數(shù)字字符串類型,為34var c=a+b ; /聲明變量c=a+btrace(c); /字符串類型和數(shù)字類型的變量相加時(shí),數(shù)字型被轉(zhuǎn)換成字符串再相加輸出結(jié)果:1234 2.實(shí)例:確定變量的數(shù)據(jù)類型 typeofvar m=12;trace(typeof(m);m=2;trace(typeof(m)輸出結(jié)果:string number3.改變數(shù)據(jù)的類型:數(shù)字Number()、字

4、符串String()、邏輯是否Boolean、對(duì)象數(shù)據(jù)類Object()、數(shù)組Array();var a =12 ; /聲明變量a是一個(gè)字符串類型,為12var b=Number(a); /將a轉(zhuǎn)換為數(shù)字類型,賦予btrace(typeof(b)+:+b)輸出結(jié)果:number:12四、運(yùn)算符1.點(diǎn)運(yùn)算符:用來(lái)連接對(duì)象與嵌套再對(duì)象中的子對(duì)象,以及訪問對(duì)象于對(duì)象的屬性和方法。例:this.stop /當(dāng)前對(duì)象停止2.數(shù)值運(yùn)算符 運(yùn)算符+-*/%+-執(zhí)行的運(yùn)算加法減法乘法除法取余數(shù)遞增遞減3.比較運(yùn)算符 運(yùn)算符=!=!=執(zhí)行的運(yùn)算小于大于小于等于大于等于等于嚴(yán)格等于不等于嚴(yán)格不等于例:x=100y

5、=100z1=(x=y) z2=(x=y) /z1 、z2對(duì)兩個(gè)式子進(jìn)行判斷,如果是正確的,則為true,如果為錯(cuò)誤的則為false trace(z1+/+z2) 輸出結(jié)果:true/false4.字符串運(yùn)算符 +進(jìn)行連接時(shí),對(duì)于不是字符串類型的數(shù)值,先將其轉(zhuǎn)換成字符串,再進(jìn)行連接。如果要將兩個(gè)數(shù)字類型的數(shù)字進(jìn)行連接,可以借助空字符串例:m=12+34 ;n=+12+34trace(m=+m+nn=+n) /輸出結(jié)果 m=46 換行 n=12345.邏輯運(yùn)算符邏輯運(yùn)算符對(duì)布爾值(邏輯是于邏輯否)進(jìn)行運(yùn)算,結(jié)果是一個(gè)布爾值true或false符號(hào)!&名稱邏輯非邏輯與(并且)邏輯或(或者)意義返回

6、相反的結(jié)果兩個(gè)均為true時(shí)結(jié)果為true一個(gè)為true時(shí),結(jié)果即為true例:age = 10;h = 1.0;if (age60 | age1.1) /身高不超過1.1,年齡小于14大于60的免票trace(免票); /輸出結(jié)果:免票 /先執(zhí)行邏輯非!,然后是邏輯與&,然后是邏輯或6.賦值運(yùn)算符運(yùn)算符意義實(shí)例+=相加并賦值x+=5 等效于x=x+5-=相減并賦值x-=5 等效于x=x-5*=相乘并賦值x*=5 等效于x=x*5/=相除并賦值x/=5 等效于x=x/5%=取模并賦值x%=5 等效于x=x%5&=換位與并賦值x&=5 等效于x=x&5賦值運(yùn)算符的一種特殊形式:條件賦值運(yùn)算符 a

7、=條件 ? 數(shù)值1:數(shù)值2 /如果條件滿足,則為值2,如果不滿足,則為數(shù)值1h=2;a=age60|h1.1?5:10trace(升高為+h+米+n價(jià)格為+a+元) /輸出為:升高為2米價(jià)格為10元7.數(shù)組訪問運(yùn)算符五、程序結(jié)構(gòu)1.條件結(jié)構(gòu)語(yǔ)法格式:if(條件)執(zhí)行操作if(條件) 執(zhí)行操作1 else 執(zhí)行操作2if(條件) 執(zhí)行操作1 elseif(條件2)執(zhí)行操作2 elseif(條件3)執(zhí)行操作3 - else 執(zhí)行操作2.循環(huán)結(jié)構(gòu)語(yǔ)法格式:For(語(yǔ)句1;語(yǔ)句2;語(yǔ)句3) 執(zhí)行語(yǔ)句語(yǔ)句1通常為賦值語(yǔ)句,語(yǔ)句2通常為表達(dá)式進(jìn)行條件判斷,在循環(huán)執(zhí)行一次后執(zhí)行語(yǔ)句3例:var sum =

8、0;for (var i = 1; i=100; i+) sum += i;/初始值為1,在小于100的情況下,加到sum中,再i加1執(zhí)行trace(sum); /輸出結(jié)果為50503.循環(huán)結(jié)構(gòu)while語(yǔ)法格式: while(條件) 執(zhí)行語(yǔ)句var sum=0;var i=1;while(i=100)sum+=i ; i+trace(sum)輸出結(jié)果:50504.break和continue語(yǔ)句:break用于跳出整個(gè)循環(huán); continue 用于跳出本輪循環(huán)質(zhì)數(shù)的判斷,判斷100以下的數(shù)字是否是質(zhì)數(shù)for (var i=3;i=100;i+=2) /檢測(cè)100以下的數(shù)字for (var j

9、=2;ji;j+) if (i%j=0) break; /如果相除無(wú)余數(shù),則退出j的循環(huán)else if (j=i-1) trace(i); 計(jì)算1-100之間所有不能被5整除的自然數(shù)的和var sum=0for (var i=1;i=100;i+=1) if (i%5=0) continue; /如果能被5整除,則跳出,開始下一個(gè)循環(huán)trace(i) /輸出所有不能被整除的數(shù)字sum+=i trace(sum) /顯示和,輸出為40005.分支結(jié)構(gòu)swich:swich 用來(lái)實(shí)現(xiàn)分支結(jié)構(gòu)實(shí)例1獲取系統(tǒng)時(shí)間,然后根據(jù)系統(tǒng)時(shí)間中的星期數(shù)輸出適當(dāng)?shù)淖址畍ar today=new Date()swi

10、tch(today.getDay() case 0:trace(今天是星期天);break; /case 與后邊的數(shù)值,必須有一個(gè)空格case 1:trace(今天是星期一);break;case 2:trace(今天是星期二);break;case 3:trace(今天是星期三);break;case 4:trace(今天是星期四);break;case 5:trace(今天是星期五);break;default:trace(今天是星期六); /返回當(dāng)天的星期 實(shí)例2判斷當(dāng)前月份所含的天數(shù)var today=new Date();theYear=today.getFullYear();the

11、Month=today.getMonth()+1;switch (theMonth)case 1:case 3: case 5:case 7: case 8:case 10: case 12:ts=31;break; /如果是1、3、5、7、8、10、12月,ts則為31case 4:case 6: case 9:case 11:ts=30;break; /如果是4、6、9、11月,ts則為30case 2:if(theYear%4=0)ts=29; else ts=28;trace(本月有+ts+天)6.with語(yǔ)句語(yǔ)言格式with(對(duì)象)對(duì)象的屬性和方法例:with(mc)nextFram

12、e();_x=100;_y=100;_ratation=90;六、事件處理機(jī)制1、按鈕事件 on( ) 實(shí)例1:用 on的鍵盤事件控制一個(gè)元件。新建一個(gè)元件,命名為mc,用移動(dòng)鍵控制。(注:可以將按鈕放在屏幕外)on (keyPress ) if(mc._x=1)mc._x-=5elsemc._x=0 /左移5像素on (keyPress ) if(mc._x=549-mc._width)mc._x+=5elsemc._x=550-mc._width /右移5像素on (keyPress ) if(mc._y=1)mc._y-=5;mc._xscale=mc._yscale-=5elsemc.

13、_y=0;mc._xscale=mc._yscale /上移5像素,橫向和縱向縮小20%on (keyPress ) if(mc._y550-_width|_x400-_height|_y0)_xscale=-100;else_xscale=100;/如果鼠標(biāo)在右側(cè),則翻轉(zhuǎn)180度,否則不翻轉(zhuǎn)onClipEvent (mouseUp) stop();實(shí)例3 getCode方法獲得鍵盤代碼 onClipEvent (keyDown) trace(Key.getCode()/顯示按鍵Ascii值;on事件無(wú)法完成此操作事件處理函數(shù)說明onLoad在影片剪輯被實(shí)例化并顯示在時(shí)間軸上時(shí)調(diào)用onUnlo

14、ad在影片剪輯被從時(shí)間軸上刪除后的第一幀中調(diào)用onEnterFrame以SWF文件的幀頻持續(xù)調(diào)用onMouseMove移動(dòng)鼠標(biāo)時(shí)調(diào)用onMouseDown按下鼠標(biāo)左鍵時(shí)調(diào)用onMouseUp釋放鼠標(biāo)左鍵時(shí)調(diào)用onKeyDown按下按鍵時(shí)調(diào)用onKeyUp釋放按鍵時(shí)調(diào)用onData當(dāng)所用數(shù)據(jù)都加載到影片剪輯時(shí)調(diào)用onPress在影片剪輯上按下鼠標(biāo)左鍵時(shí)調(diào)用onRelease在影片剪輯上按下鼠標(biāo)左鍵并釋放時(shí)調(diào)用onReleaseOutside在影片剪輯上按下鼠標(biāo)左鍵然后將鼠標(biāo)移出并釋放左鍵時(shí)調(diào)用onRollOver當(dāng)鼠標(biāo)指針從影片剪輯外移到影片剪輯上時(shí)調(diào)用onRollOut當(dāng)鼠標(biāo)指針從影片剪輯上移

15、到影片剪輯外時(shí)調(diào)用onDragOver在影片剪輯外按下鼠標(biāo)左鍵然后將鼠標(biāo)指針拖到影片剪輯上時(shí)調(diào)用onDragOut在影片剪輯上按下鼠標(biāo)左鍵然后將鼠標(biāo)指針拖出影片剪輯時(shí)調(diào)用onSetFocus當(dāng)影片剪輯具有輸入焦點(diǎn)而且釋放某按鍵時(shí)調(diào)用onKillFocus當(dāng)從影片剪輯移除焦點(diǎn)時(shí)調(diào)用 實(shí)例4 onMouseMove函數(shù)實(shí)現(xiàn)鼠標(biāo)跟隨 (在幀上加語(yǔ)句) 建立幾個(gè)影片剪輯,命名為n1-n9n1.onEnterFrame=function()this._x+=(_root._xmouse-this._x)/5;this._y+=(_root._ymouse-this._y)/5;for(var i=2;i

16、=9;i+)_rootn+i.onMouseMove=function()this._x+=(_rootn+(this._name.substring(1)-1)._x-this._x)/5;this._y+=(_rootn+(this._name.substring(1)-1)._y-this._y)/5;實(shí)例5 onEnterFrame函數(shù)實(shí)現(xiàn)圖片懸停 將一系列圖片建成影片剪輯,調(diào)入到舞臺(tái),水平分布for (var i in _root) /遍歷主時(shí)間軸中的所有對(duì)象_rooti.onEnterFrame = function() /在本事件中令每個(gè)對(duì)象左移5像素this._x -= 5;i

17、f (this._x=-170) /當(dāng)實(shí)例的x位置超過-200時(shí)this._x += 895; /使圖片放到右端_rooti.onRollOver=function()for(var j in _root) /in 和_root之間有個(gè)空格delete _rootj.onEnterFrame;_rooti.onRollOut = function() /在本事件中令每個(gè)對(duì)象左移5像素for (var j in _root) _rootj.onEnterFrame = function() /在本事件中令每個(gè)對(duì)象左移5像素this._x -= 5;if (this._x=-170) /當(dāng)實(shí)例的x

18、位置超過-200時(shí)this._x += 895; /使圖片放到右端實(shí)例:實(shí)行無(wú)限循環(huán)的方法P53實(shí)例:符合鍵控制圖片的移動(dòng)P59onEnterFrame=function() if(Key.isDown(Key.CONTROL ) if(Key.isDown (Key.LEFT ) pic._x-=20; if(Key.isDown (Key.RIGHT ) pic._x+=20; 下邊兩段程序的不同在于:if(Key.isDown(Key.RIGHT ) pic._x+=20; onEnterFrame=function() /按一下RIGHT鍵,則移動(dòng)一次if(Key.getCode()=

19、Key.RIGHT ) pic._x+=20; /按一下RIGHT鍵,則一直移動(dòng)實(shí)例:getAscii方法制作打字游戲P60var chars=new Array();for(var i=0;i10;i+)charsi=i+48for(var i=0;i26;i+)charsi+10=i+65;charsi+36=i+97function generate() /generate函數(shù)用于生成隨機(jī)字符ttt.text=;for(var i=0;i400;i+)rnd=Math.floor (62*Math.random ();ttt.text+=String.fromCharCode(chars

20、rnd)anniu.onPress=generate; /將函數(shù)generate設(shè)為單擊按鈕的事件處理函數(shù) _root.onKeyDown =function() if(String.fromCharCode(Key.getAscii()=ttt.text.substring(0,1)ttt.text=ttt.text.substring(1);if(ttt.text=)generate();Key.addListener(_root)實(shí)例:替換鼠標(biāo)指針P62 未完成在要替換的指針上寫上代碼:onClipEvent (mouseMove) _x=_root._xmouse ;_y=_root.

21、_ymouse;在幀上寫上代碼Mouse.hide() /影藏鼠標(biāo)指針 實(shí)例:自定義鼠標(biāo)右鍵七、影片剪輯1.影片剪輯的屬性屬性說明屬性說明_name實(shí)例名稱_totalframes總幀數(shù)_xx坐標(biāo)位置_framesloaded已經(jīng)加載的幀數(shù)_yy坐標(biāo)位置_url所在swf文件URL_rotation旋轉(zhuǎn)角度_highqualityswf文件呈現(xiàn)的品質(zhì)_alpha透明度_focustrect焦點(diǎn)時(shí)有無(wú)黃色矩形_visible可見性_soundbuftime聲音緩沖的秒數(shù)_width寬度enabled是否啟用的狀態(tài)_heigth高度menu關(guān)聯(lián)的ContextMenu_xscale水平縮放百分比h

22、itArea點(diǎn)擊區(qū)域_yscale豎直縮放百分比f(wàn)ocuEnabled是否能夠接受焦點(diǎn)_xmouse鼠標(biāo)指針的x坐標(biāo)tabIndexTab鍵順序_ymouse鼠標(biāo)指針的y坐標(biāo)tabEnabled是否具有Tab鍵順序_parent父級(jí)影片剪輯tabChildren子級(jí)有無(wú)Tab鍵順序_target實(shí)例的目標(biāo)路徑trackAsMenu可否接收release事件_currentframe播放頭所在的當(dāng)前幀useHandCursor是否顯示手型光標(biāo)實(shí)例:通過_rotation屬性旋轉(zhuǎn)對(duì)象onEnterFrame=function()hh._rotation+=0.01;mm._rotation+=0.

23、6;ss._rotation+=36實(shí)例:通過_rotation屬性制作鼠標(biāo)旋轉(zhuǎn)跟隨gg._x=aq._xgg._y=qq._ygg.onEnterFrame=function()i=_root._xmouse -this._x;j=_root._ymouse -this._y;if(i0)this._rotation=Math.atan(j/i)*360/(2*Math.PI)elsethis._rotation=Math.atan(j/i)*360/(2*Math.PI)+1802.透明度和可見性實(shí)例:通過_alpha屬性實(shí)現(xiàn)圖片漸入漸出tt.stop()onMouseDown=funct

24、ion() /鼠標(biāo)按下事件(換圖)tt.onEnterFrame=function() this._alpha-=5; /透明度遞減if(this._alpha=100)delete this.onEnterFrame;實(shí)例:用3.用寬度和高度_width和_heigth屬性控制影片剪輯的大小實(shí)例:_width和_heigth屬性控制影片剪輯大小tt.stop()zhe.onMouseMove=function()this._width=2*Math.abs(_root._xmouse-this._x);this._height=2*Math.abs(_root._ymouse-this._y

25、);onMouseDown=function()tt.gotoAndStop(1+tt._currentframe%tt._totalframes);注意此處于上邊的不同1+tt._currentframe%tt._totalframes實(shí)例:_xscale和_yscale屬性控制影片剪輯縮放tt.stop()xx=zhe._widthyy=zhe._heightzhe.onMouseMove=function()this._xscale=100*(_root._xmouse -this._x)/(xx/2);this._yscale=100*(_root._ymouse -this._y)/

26、(yy/2);onMouseDown=function()tt.gotoAndStop(1+tt._currentframe%tt._totalframes);實(shí)例:通過_xscale和_yscale屬性控制影片剪輯縮放tt.stop()onKeyDown=function()switch(Key.getCode()case Key.UP :tt._yscale+=10;breakcase Key.DOWN :tt._yscale-=10;break/如果用height也可以接近效果,但不能實(shí)現(xiàn)翻轉(zhuǎn)case Key.LEFT :tt._xscale+=10; breakcase Key.RIG

27、HT :tt._xscale-=10;breakKey.addListener (_root); /為_root注冊(cè)鍵盤監(jiān)聽器4.鼠標(biāo)位置主場(chǎng)景的鼠標(biāo)位置:_root._xmouse _root._ymouse影片剪輯鼠標(biāo)位置:_root.tt_x _root.tt._y5.幀屬性實(shí)例:鼠標(biāo)移進(jìn)開始播放P75for(var i in _root) _rooti.stop(); _rooti.onRollOver=function() this.onEnterFrame=function() if(this._currentframe1) this.prevFrame(); elsedelete

28、 this.onEnterFrame; for(var i in _root) _rooti.stop(); _rooti.onRollOver=function() this.onEnterFrame=function() if(this._currentframe1) this.prevFrame(); else delete this.onEnterFrame;實(shí)例:制作load動(dòng)畫P77導(dǎo)入一個(gè)mp3.放在第三幀上,在第二幀上放上一個(gè)按鈕,名稱為an ,第二幀程序:stop();an.onRelease=function()play();創(chuàng)建一個(gè)影片剪輯元件,名為loadd.實(shí)例:du

29、plicateMovieClip動(dòng)態(tài)復(fù)制影片剪輯P79var i=1;star._visible=false;onMouseDown=function()star.duplicateMovieClip(star+i,i)with(_rootstar+i)_x=_root._xmouse ;_y=_root._ymouse ;_rootstar+i.onEnterFrame=function()this._rotation+=10;i+;實(shí)例:用attachMovie方法制作雪花飛舞P81for(var i=0;i100;i+)_root.attachMovie(s,i,i);_rooti._x

30、=550*Math.random();_rooti._y=400*Math.random();_rooti._rotation=60*Math.random (); _rooti._xscale=_rooti._yscale=_rooti._alpha=100*Math.random (); _rooti._alpha=70+30*Math.random ();_rooti.onEnterFrame=function()this._y+=this._xscale/22;this._y%=400;this._rotation+=3;實(shí)例:跟隨鼠標(biāo)游動(dòng)的魚P82實(shí)例:打蜜蜂游戲P83實(shí)例:用cre

31、ateEmptyMovieClip方法創(chuàng)建影片剪輯856.動(dòng)態(tài)實(shí)現(xiàn)遮蔽:語(yǔ)句:mymc.setMask(遮蔽物) mymc為用來(lái)被遮蔽的物體名稱;遮蔽物位于遮蔽層取消:mymc.setMask(null) 實(shí)例:用遮蔽實(shí)現(xiàn)橡皮擦特效_root.createEmptyMovieClip (mask,0);/創(chuàng)建空影片剪輯實(shí)例來(lái)放置附加的園p.setMask(mask);onMouseMove=function()var i=mask.getNextHighestDepth();mask.attachMovie(yuan,i,i);maski._x=_root._xmouse ;maski._y=

32、_root._ymouse ;實(shí)例:用碰撞測(cè)試實(shí)現(xiàn)粘附特效P95mc._visible=0;onEnterFrame=function()for(var i=0;i10;i+)depth=_root.getNextHighestDepth ();attachMovie(ball,b+depth,depth);_rootb+depth._x=600*Math.random()-50;_rootb+depth.v=5+10*Math.random();_rootb+depth.onEnterFrame=function()this._y+=this.v;this._x+=5*Math.random

33、 ();if(mc.hitTest(this._x,this._y,true)ran=3*Math.random ();if(ran400)this.removeMovieClip();實(shí)例:用loadMovie制作圖片展示P86實(shí)例:鼠標(biāo)跟隨的下雪效果P89實(shí)例:用swapDepths方法實(shí)現(xiàn)立體旋轉(zhuǎn)效果90實(shí)例:制作放大鏡P92實(shí)例:用遮蔽是想橡皮擦特效P93_root.createEmptyMovieClip (mask,0);/創(chuàng)建空影片剪輯實(shí)例來(lái)放置附加的園p.setMask(mask);onMouseMove=function()var i=mask.getNextHighestD

34、epth();mask.attachMovie(yuan,i,i);maski._x=_root._xmouse ;maski._y=_root._ymouse ;實(shí)例:用碰撞測(cè)試實(shí)現(xiàn)粘附特效P95Stage.scaleMode=showAllmc._alpha=0;onEnterFrame=function()for(var i=0;i10;i+)depth=_root.getNextHighestDepth ();attachMovie(ball,b+depth,depth);_rootb+depth._x=600*Math.random()-50;_rootb+depth.v=5+10*

35、Math.random();_rootb+depth.onEnterFrame=function()this._y+=this.v;this._x+=5*Math.random ();if(mc.hitTest(this._x,this._y,true)ran=3*Math.random ();if(ran400)7.繪畫方法MovieClip類的方法可以通過AS來(lái)動(dòng)態(tài)繪制圖形。moveTo移動(dòng)繪畫位置 myMc.moveTo(x,y) (x,y)是要將繪畫位置移動(dòng)到的點(diǎn)的坐標(biāo)lineStyle方法定義用lineTo和curveTo方法畫線的線條樣式。myMc.lineStyle(線條粗細(xì),線

36、條顏色,透明度)0xFFFFFF白色 、0x黑色 、0xFF0000紅色 、0x00FF00綠色 、0x0000FF藍(lán)色lineTo繪制直線 myMc.lineTo(x,y) 起點(diǎn)在當(dāng)前位置,終點(diǎn)在(x,y)實(shí)例:用繪畫方法畫直線P97onMouseDown=function()depth=_root.getNextHighestDepth ();drawing=true;x0=_root._xmouse ;y0=_root._ymouse ;onMouseMove=function()if(drawing)_root.createEmptyMovieClip (line+depth,dept

37、h);with(_rootline+depth)moveTo(x0,y0);lineStyle(0,0x0000FF,100);lineTo(_root._xmouse,_root._ymouse )onMouseUp=function()drawing=false繪制矩形onMouseDown=function()depth=_root.getNextHighestDepth ();drawing=true;x0=_root._xmouse ;y0=_root._ymouse ;onMouseMove=function()if(drawing)_root.createEmptyMovieCl

38、ip (juxing+depth,depth);with(_rootjuxing+depth)moveTo(x0,y0);lineStyle(0,0x0000FF,100);lineTo(_root._xmouse,y0);lineTo(_root._xmouse,_root._ymouse )lineTo(x0,_root._ymouse )lineTo(x0,y0)onMouseUp=function()drawing=false實(shí)例:用繪畫方法畫曲線P98curveTo繪制曲線moveTo(100,100); curveTo(300,200,300,300)實(shí)例:繪制曲線 P98onMo

39、useDown=function()drawing=true; /繪畫開始 if(!down1) /如果不是鼠標(biāo)按下第一次則為第一次depth=_root.getNextHighestDepth ();down1=true; /標(biāo)識(shí)第一次down2=false;x1=_root._xmouse ;y1=_root._ymouse ;elsedown1=false;down2=true;onMouseMove=function()if(drawing)if(down1) /如果鼠標(biāo)按下第一次 _root.createEmptyMovieClip (curve+depth,depth); with

40、(_rootcurve+depth) moveTo(x1,y1); lineStyle(0,0x0000FF,100); lineTo(_root._xmouse ,_root._ymouse );else if(down2) /如果鼠標(biāo)按下第二次則畫曲線_root.createEmptyMovieClip (curve+depth,depth);with(_rootcurve+depth) moveTo(x1,y1); lineStyle(0,0x0000FF,100); curveTo(_root._xmouse ,_root._ymouse,x3,y3 );updateAfterEven

41、t(); /刷新顯示onMouseUp=function()drawing= false;if(down1)x3=_root._xmouse ;y3=_root._ymouse ;elsedown2=false;實(shí)例:用繪畫方法畫圓P100八、文字1.文本類型P109文本類型: (1)靜態(tài)文本: (2)動(dòng)態(tài)文本:myTxt.text=zhongguo /要加引號(hào) myTxt =Number(123)實(shí)例:文字的淡入淡出var num=65; /字母A的ASCII碼值var alp=10; /_alpha屬性的變化速率aa.text=String.fromCharCode(num) onEnterFrame=function()aa._alpha-=alp;if(aa._alpha90)num=65;aa.text=String.fromCharCode(num);else

溫馨提示

  • 1. 本站所有資源如無(wú)特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁(yè)內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
  • 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫(kù)網(wǎng)僅提供信息存儲(chǔ)空間,僅對(duì)用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對(duì)任何下載內(nèi)容負(fù)責(zé)。
  • 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請(qǐng)與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對(duì)自己和他人造成任何形式的傷害或損失。

評(píng)論

0/150

提交評(píng)論