2010年9月20日 星期一

AS 3.0 類別Class:Sound-- Loading sound

var req:URLRequest = new URLRequest ("meteor.mp3")
var sound:Sound = new Sound();

function soundLoaded(event:Event):void{
sound.play();

}

sound.addEventListener(Event.COMPLETE,soundLoaded);
sound.load(req);

2010年9月14日 星期二

Highlight HTML Text -- html text 加上底色

< font style="background-color:#ffffcc" > testing </font>

完成
testing

AS 3.0 Preloader(2)

var req:URLRequest = new URLRequest("drag.swf");
var loader:Loader= new Loader();



function fileLoaded (event:Event):void
{
addChild(loader); }



function preload(event:ProgressEvent):void{

var percent:Number =Math.round(event.bytesLoaded/event.bytesTotal*100);

preload_txt.text= String(percent)+"%"

}

loader.contentLoaderInfo.addEventListener(Event.COMPLETE,fileLoaded);


loader.contentLoaderInfo.addEventListener(ProgressEvent.PROGRESS,preload);



loader.load(req);

//解說
Event.COMPLETE 事件加載完畢調度
ProgressEvent.PROGRESS 事件加載的過程中調度,並附帶加載情況

2010年9月10日 星期五

AS 3.0 Preloader

部份內容, 轉載自文章:
http://benlibra.blogspot.com/2009/02/as3-preloader.html

AS3:預載程式( Preloader )
預載的方式,只需兩個時間軸圖層(Timeline Layer):一個圖層(圖層名稱設為:text)置入「動態文字」,並設定好文字的樣式與大小,物件名稱(Instance Name)設為:percent;另一圖層(圖層名稱設為:actions)為Actionscript圖層,輸入下列ActionScript程式碼:

//定義預載器為:myLoader
var myLoader: Loader = new Loader();

//使用自訂功能:loop 監聽myLoader的載入進度
myLoader.contentLoaderInfo.addEventlistener(ProgressEvent.PROGRESS, loop);

//使用自訂功能:done 監聽myLoader是否已完成載入
myLoader.contentLoaderInfo.addEventListener(Event.COMPLETE,done);

//用myLoader載入外部檔案:content.swf
myLoader.load(new URLRequest("content.swf"));

function loop(e:ProgressEvent):void{
//宣告變數perc的值為:已載入位元大小/總位元大小

var perc:Number=e.bytesLoaded/e.bytesTotal;
//將perc的最小整數值轉為為字串,並指定給percent

percent.text = Math.ceil(perc).toString();
}

function done(e:Event):void{

removeChild(percent);
//清除動態文字percent的內容
percent=null;

//把myLoader載入的內容放上舞台(Stage)
addChild(myLoader);

}





2010年9月7日 星期二

AS 3.0 類別Class:URLRequest--Loading swf in flash

var req:URLRequest = new URLRequest("drag.swf");
var loader:Loader = new Loader();

loader.load(req);
addChild(loader);



1個Loader 類別只能載入1個外部swf檔或圖片檔,若要載入多個file, 要建立相對數量的Loader
Loader物件.方法或屬性

建構Loader物件
Loader物件名稱 = new Loader()
Var Loader 物件名稱: Loader = new Loader()

方法load() (檔案來源)
Loader.load(req);
將外部檔案匯入物件成為Loader物件的子物件

HTML 符號代碼表 HTML Symbol Entities

圖片引自:
http://www.cheat-sheets.org/saved-copy/characters_cheat_sheet.png

2010年9月6日 星期一

AS 3.0 Class 類别 Date -- 時間日期的取得與設定

fla stage 上要有的物件:
1) dynamic text, 名為"date_txt"
2) dynamic text, 名為"time_txt"

actionscript 上, 首先要宣告變數:
1)宣告資料類型為DATE
2)用來存放月份/日期/小時/分鐘 的變數
3)定義function , 名為updateTime()
4)用ENTER_FRAME來更新日期資料, 影片播放1格, 便執行1次updateTime()
5) 建立Date類別的實體, 存入today變數中 , getMonth()/ getDate()/ getHours / getMinutes 都是方法(method)
6) 顯示分鐘時, 要用2位數, 例如:"09:15", 所以用minTxt (string) 變數, 加入if else 條件

Actionscript 如下:
//宣告資料類型為Date的變數
var today:Date;

//宣告資料類型為 Number,將用來存放月份和日期的變數
var month:Number;
var date:Number;


//宣告資料類型為 Number,將用來存放時和分的變數
var hour:Number;
var minute:Number;


//資料類型為 String,用來存放要顯示之分鐘數的變數
var minTxt:String;


//取得現在日期時間之函式
function updateTime(myEvent:Event){
today= new Date(); //建立 Date 類別之實體,以取得現在時間
month= today.getMonth()+1;//取得月份
date= today.getDate(); //取得日期
hour= today.getHours(); //取得小時
minute= today.getMinutes(); //取得分鐘


//處理要顯示之分鐘數
if(minute<10){
minTxt="0"+minute;}

else{

minTxt=minute.toString();}



//將日期和時間顯示在文字欄位中
date_txt.text=month+"月"+date+"日";
time_txt.text=hour+":"+minTxt;

}

//以影格播放之頻率執行 updateTime 函式
this.addEventListener(Event.ENTER_FRAME,updateTime);