http://www.51xflash.com 閃客裝備
http://help.adobe.com/zh_CN/FlashLite/2.0_FlashLiteDevGuide2/WS5b3ccc516d4fbf351e63e3d118d293e4ad-7fdc.html
http://help.adobe.com/zh_CN/FlashLite/2.0_FlashLiteDevGuide2/WS5b3ccc516d4fbf351e63e3d118d293e4ad-7fdc.html
所有的回放函數都會影響影片的時間軸以及影片剪輯。但它們不會影響事件或者事件處理函數被調用的方式。比如,無論舞臺上的影片剪輯是停止還是正在播放的,它仍然會有onEnterFrame事件。
_currentframe是影片剪輯的一個重要屬性,它通常與回放函數結合使用。該屬性不能被修改(只讀),它表示播放頭當前所在幀的編號。但是要小心,_currentframe熟悉不能是標簽,只能是數字。
annime.onPress = function(){
if(this._currentframe==1)
this.gotoAndStop("triangle");
else
this.prevFrame();
}
_currentframe是影片剪輯的一個重要屬性,它通常與回放函數結合使用。該屬性不能被修改(只讀),它表示播放頭當前所在幀的編號。但是要小心,_currentframe熟悉不能是標簽,只能是數字。
annime.onPress = function(){
if(this._currentframe==1)
this.gotoAndStop("triangle");
else
this.prevFrame();
}
添加到對象(影片剪輯)的變量也可以稱為屬性。對于附加到對象的函數,稱為方法。
1._alpha屬性
表示影片剪輯的透明度。
如果要在主時間軸里編寫代碼,改變舞臺上ball1的透明度,就需要限定屬性的作用域,
在主時間軸改變_alpha屬性值時,使用了點符號。這是應為_alpha屬性是影片剪輯的屬性,它的作用域僅限于影片剪輯。
2._x和_y屬性
1._alpha屬性
表示影片剪輯的透明度。
如果要在主時間軸里編寫代碼,改變舞臺上ball1的透明度,就需要限定屬性的作用域,
在主時間軸改變_alpha屬性值時,使用了點符號。這是應為_alpha屬性是影片剪輯的屬性,它的作用域僅限于影片剪輯。
2._x和_y屬性
內插動畫:一個動作只需指定起始畫面和結束畫面,中間的畫面,自動的添加上。
內插動畫類型:一種為動作,另外一種為形狀。
動作:變形,位置,大小,一般為對象或者元件
關鍵幀:一個動作的起始畫面,一個動作的結束畫面.
內插動畫類型:一種為動作,另外一種為形狀。
動作:變形,位置,大小,一般為對象或者元件
關鍵幀:一個動作的起始畫面,一個動作的結束畫面.
Stage類的實例只有一個,即常說的舞臺。當創建一個Flash文檔文件時,中間的白色區域就是舞臺或Stage類的實例。
Stage類屬于容器類,可以在舞臺中添加其他顯示實例。
在默認情況下,已經有一個顯示實例添加到舞臺中,這個顯示實例就是主時間軸。
主時間軸可以通過this關鍵字來引用這個實例。所以,當創建一個Flash文檔時,已經有兩個顯示實例被創建出來,可以通過stage和root來引用,而且,root是在stage下.
Stage類屬于容器類,可以在舞臺中添加其他顯示實例。
在默認情況下,已經有一個顯示實例添加到舞臺中,這個顯示實例就是主時間軸。
主時間軸可以通過this關鍵字來引用這個實例。所以,當創建一個Flash文檔時,已經有兩個顯示實例被創建出來,可以通過stage和root來引用,而且,root是在stage下.
setInterval()函數的作用是每隔一定時間,就調用函數。
setInterval(函數名,時間間隔,函數參數);
setInterval(函數名,時間間隔,函數參數);
用于創建影片剪輯實例的MovieClip類
//創建MovieClip類實例,并用mc來引用這個實例
var mc:MovieClip=new MovieClip()
影片剪輯是一個容器,也是一個對象.
按鈕是可以送指令.
//創建MovieClip類實例,并用mc來引用這個實例
var mc:MovieClip=new MovieClip()
影片剪輯是一個容器,也是一個對象.
按鈕是可以送指令.
ActionScript 3.0處理事件的語法如下:
發送者.addEventListener(事件名,接收者)
發送者.addEventListener(事件名,接收者)
舞臺是創建Flash文檔時放置圖形內容的區域,這些圖形內容包括矢量圖形,文本框,按鈕,導入的位圖圖形或視頻剪輯。Flash各種活動都發生在舞臺上,在舞臺上看到的內容就是導出的影片觀眾看到的內容。工作區是環繞舞臺的灰色區域,可將工作區看做背景。
"按鈕"元件是由"彈起"幀,"指針經過"幀,"按下"幀和"點擊"幀組成的影片剪輯。
1.創建一個元件
1.)文件>新建 “文檔”.執行“插入>新建元件”命令,彈出“創建新元件”對話框,并設置“名稱”為“開始”,元件“類型”為“按鈕”,單機“時間軸”面板上的“彈起”狀態,執行“文件>導入>導入到舞臺”命令,將face1.png
2.)單擊“時間軸”面板上的“指針經過”狀態,按F6鍵插入關鍵幀,再按delete刪除內容,導入face2.png
3.)完成按鈕3個狀態,單擊“狀態欄”上的“場景1”,返回到場景編輯狀態,將元件“開始”從“庫”面板中拖入到場景中并調整大小及位置.
4.)"控制>啟用簡單按鈕"
5.)執行"文件>保存"
1.創建一個元件
1.)文件>新建 “文檔”.執行“插入>新建元件”命令,彈出“創建新元件”對話框,并設置“名稱”為“開始”,元件“類型”為“按鈕”,單機“時間軸”面板上的“彈起”狀態,執行“文件>導入>導入到舞臺”命令,將face1.png
2.)單擊“時間軸”面板上的“指針經過”狀態,按F6鍵插入關鍵幀,再按delete刪除內容,導入face2.png
3.)完成按鈕3個狀態,單擊“狀態欄”上的“場景1”,返回到場景編輯狀態,將元件“開始”從“庫”面板中拖入到場景中并調整大小及位置.
4.)"控制>啟用簡單按鈕"
5.)執行"文件>保存"
ActionScript3.0中引入的Socket類,使ActionScript可以建立套接字連接,并讀取和寫入原始二進制數據。在定義有關數據交換的操作方法時,ActionScript使用了兩個接口:IDataInput接口和IDataOutput接口,分別定義數據的輸入和輸出。Socket類的設計實現了這兩個接口,在實現方法時,關注二進制數據的輸入和輸出。因此,使用Socket類與服務器的二進制協議通訊非常輕易。
利用Socket類的構造函數創建Socket對象。Socket類的構造函數包含兩個參數:
Socket(host:String=null,port:int=0)
Øhost:String(default=null)—要連接的主機的名稱。若未指定此參數,將創建一個最初處于斷開狀態的套接字。
Øport:int(default=0)—要連接的端口號。若未指定此參數,將創建一個最初處于斷開狀態的套接字。
假如代碼中提供了充足的參數,則可以成功的建立一個打開套接字連接。該構造函數在執行成功時,并不發送Event.COMPLETE事件,而是發送一個Event.CONNECT事件。遠程網絡連接的情況比較多變,應充分考慮響應連接的異步性,在代碼中偵聽Event.CONNECT事件,并在事件的偵聽器中進行后續的操作。
代碼中也可以使用connected屬性查詢Socket對象目前是否已連接。當連接建立時,connected屬性為true。假如套接字沒有連接,可以調用套接字對象的connect()方法,重建連接或者嘗試使用新的地址和端口號。
Socket類使用二進制協議的服務器互操作,可以使FlashPlayer能夠連接到郵件和新聞服務器,編寫根據不同的Internet協議(例如POP3、SMTP、IMAP和NNTP)進行交互的代碼。當服務器的服務可用,且套接字連接建立后,就可以向緩沖區中寫入信息或者讀取信息。緩沖區的數據需要雙方配合操作。當服務器關閉連接時,FlashPlayer會接受到Event.CLOSE事件的通知。偵聽這個事件,避免單方操作不存在的套接字連接。
1.讀取緩沖區
讀取是最常見的操作,究竟FlashPlayer經常是作為接受服務的一方,從遠程索取數據。
在FlashPlayer中,可用的套接字讀取操作很多,常見的有:
ØreadByte():從套接字讀取一個帶符號字節。
ØreadBytes(bytes:ByteArray,offset:uint=0,length:uint=0):從套接字讀取length參數所指定的數據的字節數。
ØreadUTF():從套接字讀取一個UTF-8字符串。
ØreadUTFBytes(length:uint):從套接字讀取length參數所指定的UTF-8數據的字節數,并返回一個字符串。
ØreadObject():從以AMF序列化格式編碼的套接字讀取一個對象。該參數返回一個無類型類型。寫入前可以進行壓縮。
Socket類提供bytesAvailable參數,標記輸入緩沖區中可讀取的數據的字節數。這個參數是只讀的。對套接字輸出緩沖區中積累的所有數據進行刷新。
2.寫入操作
對于客戶端的FlashPlayer而言,寫入套接字意味著向服務器端發送數據。write方法寫入的數據不會被立即傳送。
針對套接字的寫操作主要有:
ØwriteByte(value:int):將一個字節寫入套接字。
ØwriteBytes(bytes:ByteArray,offset:uint=0,length:uint=0):從指定的字節數組寫入一系列字節。
ØwriteUTF(value:String):將參數指定的字符串寫入緩沖。但實際上寫入的信息要更多一些。以下數據寫入套接字:一個無符號16位整數,它指示了指定UTF-8字符串的長度(以字節為單位),后面跟隨字符串本身。
ØwriteObject(object:*):以AMF序列化格式將一個對象寫入套接字。
ØwriteUTFBytes(value:String):將一個UTF-8字符串寫入套接字。
這些數據在調用flush()方法之前一直被保存在隊列中。使用flush()方法,對套接字輸出緩沖區中積累的所有數據進行刷新。
當套接字使用完畢后,可以調用close()方法,關閉套接字連接關閉套接字。在調用close()方法時不會引發Event.CLOSE事件。
在調用close()方法之后,將無法讀取或寫入任何數據。但是套接字對象不會被刪除。假如需要再次進行連接,不要重新建立套接字對象,只要直接對原有Socket對象調用connect()方法。
2Socket套接字類 套接字連接是一種持續的網絡連接。一般的網絡數據傳遞需要進行多次,每次之間是不連續的。但是套接字連接有助于避免頻繁的詢問用戶連接。當套接字連接建立后,客戶端和服務器之間就形成了一個臨時的雙向通道。服務器可以向客戶端傳送消息,類似于將數據包從服務器推向客戶端,而無需客戶端發出直接的請求。這是套接字連接最實用的部分。
套接字連接是一種基層的通信,但在ActionScript3.0中又分為兩大類:二進制數據的套接字連接和XML數據的套接字連接。假如需要執行最基層的數據傳輸,可以使用ActionScript3.0的Sockect類,該類負責二進制數據的傳輸和讀取。假如要進行格式化的文本數據傳輸,可以利用XML格式作為信息的格式,此時可以利用ActionScript的XMLSocket類。
利用Socket類的構造函數創建Socket對象。Socket類的構造函數包含兩個參數:
Socket(host:String=null,port:int=0)
Øhost:String(default=null)—要連接的主機的名稱。若未指定此參數,將創建一個最初處于斷開狀態的套接字。
Øport:int(default=0)—要連接的端口號。若未指定此參數,將創建一個最初處于斷開狀態的套接字。
假如代碼中提供了充足的參數,則可以成功的建立一個打開套接字連接。該構造函數在執行成功時,并不發送Event.COMPLETE事件,而是發送一個Event.CONNECT事件。遠程網絡連接的情況比較多變,應充分考慮響應連接的異步性,在代碼中偵聽Event.CONNECT事件,并在事件的偵聽器中進行后續的操作。
代碼中也可以使用connected屬性查詢Socket對象目前是否已連接。當連接建立時,connected屬性為true。假如套接字沒有連接,可以調用套接字對象的connect()方法,重建連接或者嘗試使用新的地址和端口號。
Socket類使用二進制協議的服務器互操作,可以使FlashPlayer能夠連接到郵件和新聞服務器,編寫根據不同的Internet協議(例如POP3、SMTP、IMAP和NNTP)進行交互的代碼。當服務器的服務可用,且套接字連接建立后,就可以向緩沖區中寫入信息或者讀取信息。緩沖區的數據需要雙方配合操作。當服務器關閉連接時,FlashPlayer會接受到Event.CLOSE事件的通知。偵聽這個事件,避免單方操作不存在的套接字連接。
1.讀取緩沖區
讀取是最常見的操作,究竟FlashPlayer經常是作為接受服務的一方,從遠程索取數據。
在FlashPlayer中,可用的套接字讀取操作很多,常見的有:
ØreadByte():從套接字讀取一個帶符號字節。
ØreadBytes(bytes:ByteArray,offset:uint=0,length:uint=0):從套接字讀取length參數所指定的數據的字節數。
ØreadUTF():從套接字讀取一個UTF-8字符串。
ØreadUTFBytes(length:uint):從套接字讀取length參數所指定的UTF-8數據的字節數,并返回一個字符串。
ØreadObject():從以AMF序列化格式編碼的套接字讀取一個對象。該參數返回一個無類型類型。寫入前可以進行壓縮。
Socket類提供bytesAvailable參數,標記輸入緩沖區中可讀取的數據的字節數。這個參數是只讀的。對套接字輸出緩沖區中積累的所有數據進行刷新。
2.寫入操作
對于客戶端的FlashPlayer而言,寫入套接字意味著向服務器端發送數據。write方法寫入的數據不會被立即傳送。
針對套接字的寫操作主要有:
ØwriteByte(value:int):將一個字節寫入套接字。
ØwriteBytes(bytes:ByteArray,offset:uint=0,length:uint=0):從指定的字節數組寫入一系列字節。
ØwriteUTF(value:String):將參數指定的字符串寫入緩沖。但實際上寫入的信息要更多一些。以下數據寫入套接字:一個無符號16位整數,它指示了指定UTF-8字符串的長度(以字節為單位),后面跟隨字符串本身。
ØwriteObject(object:*):以AMF序列化格式將一個對象寫入套接字。
ØwriteUTFBytes(value:String):將一個UTF-8字符串寫入套接字。
這些數據在調用flush()方法之前一直被保存在隊列中。使用flush()方法,對套接字輸出緩沖區中積累的所有數據進行刷新。
當套接字使用完畢后,可以調用close()方法,關閉套接字連接關閉套接字。在調用close()方法時不會引發Event.CLOSE事件。
在調用close()方法之后,將無法讀取或寫入任何數據。但是套接字對象不會被刪除。假如需要再次進行連接,不要重新建立套接字對象,只要直接對原有Socket對象調用connect()方法。
2Socket套接字類 套接字連接是一種持續的網絡連接。一般的網絡數據傳遞需要進行多次,每次之間是不連續的。但是套接字連接有助于避免頻繁的詢問用戶連接。當套接字連接建立后,客戶端和服務器之間就形成了一個臨時的雙向通道。服務器可以向客戶端傳送消息,類似于將數據包從服務器推向客戶端,而無需客戶端發出直接的請求。這是套接字連接最實用的部分。
套接字連接是一種基層的通信,但在ActionScript3.0中又分為兩大類:二進制數據的套接字連接和XML數據的套接字連接。假如需要執行最基層的數據傳輸,可以使用ActionScript3.0的Sockect類,該類負責二進制數據的傳輸和讀取。假如要進行格式化的文本數據傳輸,可以利用XML格式作為信息的格式,此時可以利用ActionScript的XMLSocket類。