關於行為指令慣例
行為是預先編寫的 ActionScript 2.0 程式碼,可以加入至 FLA 檔的某些部分。 許多開發人員都會將 ActionScript 程式碼輸入主「時間軸」上的一個或數個影格中,或外部 ActionScript 檔案中。 不過,當您使用行為指令時,有時候程式碼是直接放在元件實體上 (例如按鈕、影片片段或組件),而不是放在時間軸上。
ActionScript 3.0 不支援行為。
比較時間軸程式碼和物件程式碼
若要避免分散的 ActionScript 2.0 程式碼造成的問題,請小心規劃使用行為的文件。 許多開發人員不將 ActionScript 放在元件實體上,而是將程式碼放在時間軸上 (時間軸程式碼) 或類別中。 因為行為指令會將程式碼加入至 FLA 檔中的很多位置,這表示 ActionScript 並不集中,可能會很難尋找。 如果程式碼不集中,就很難了解各個程式碼片段之間的互動,也就不可能寫出簡潔的程式碼。 此外,分散的程式碼還有可能在偵錯程式碼或編輯檔案時引起問題。
如果您是使用行為指令,請嘗試下列功能來加速處理行為指令及分散之 ActionScript 的工作:
Script 導覽器
可讓您很容易在「動作」面板中找到及編輯時間軸程式碼或個別物件上的程式碼。
尋找和取代
讓您搜尋並取代 FLA 檔案中的字串。
Script 鎖定
讓您在「動作」面板中鎖定來自各種物件的多個指令碼,然後再同時處理。 這個方法搭配指令碼導覽器使用效果最佳。
影片結構檢視器
可讓您檢視及組織 FLA 檔案的內容,並可選取元素 (包括指令碼) 以進一步修改。
何時使用行為指令
含有行為的 FLA 檔和不含行為的 FLA 檔之間的主要差異是,您必須用來編輯專案的工作流程。 如果您使用行為,就必須選取舞台上的每一個實體,或是選取舞台,然後再開啟「動作」或「行為」面板來進行修改。 如果您自己撰寫 ActionScript,並將所有程式碼放在主「時間軸」上,那麼只需要在「時間軸」上進行變更即可。
如果您有包含元件的 FLA 檔,就可以在「舞台」上選取其中一個實體,然後使用「行為指令」面板上的「增加行為指令」選單,將行為指令加入至該實體。 您選取的行為指令會使用類似 on() 處理常式的「物件程式碼」,自動將附加至實體的程式碼加入。 您也可以使用「行為」面板,在時間軸上選取影格,並將不同的行為加入影格中。
決定建構 FLA 檔的方式。 檢查您要在 FLA 檔中以何種方式及在哪個位置使用行為指令和 ActionScript。 請考慮下列問題:
行為包含了什麼程式碼?
您需要修改行為程式碼嗎? 如果需要,要修改多少? 如果您想要在任何程度上修改行為指令程式碼,請不要使用行為指令。 如果對 ActionScript 進行修改,則通常您會無法使用「行為指令」面板編輯行為指令。 而如果您打算在「動作」面板中大量編輯行為指令,通常在某個集中的位置自行撰寫所有 ActionScript 會比較容易。
您需要何種其他的 ActionScript,其他 ActionScript 是否必須與行為指令程式碼進行互動? 從集中的位置較容易進行偵錯與修改。 例如,如果時間軸上的程式碼會與物件上的行為指令進行互動,請避免使用行為指令。
您需要使用多少行為?打算要將行為放在 FLA 檔中的哪些位置? 如果您將行為指令全部放在時間軸上,可能在文件中也能正常運作。 或者,如果您只使用少量的行為指令,可能就不會影響到工作流程。 不過,如果您在許多物件實體上使用多個行為指令,則在「時間軸」上或外部 ActionScript 檔中撰寫自己的程式碼會比較有效率。
請記住,ActionScript 3.0 不支援行為。
以一致的方式使用行為指令
如果行為是您主要或唯一的 ActionScript 來源,請在整個文件中以一致的方式使用行為。 當在 FLA 檔中只有少數或沒有額外的程式碼時,或者有一致的系統來管理您所使用的行為指令,請使用行為指令。
如果您要將 ActionScript 加入至 FLA 檔中,請將程式碼放在加入行為的相同位置,並記載加入程式碼的方式和位置。
例如,如果您在「舞台」(物件程式碼) 中的實體上、主時間軸 (影格指令碼) 上和外部 AS 檔案中都放置程式碼,則應該要檢查檔案結構。 如果您在上述位置都放置了程式碼,可能會難以管理您的專案。 不過,如果您以合乎邏輯的方式使用行為指令,並建構程式碼以在這些行為指令周圍以特定的方式運作 (將所有東西都放在物件實體上),至少工作流程會很一致。 文件稍後將會比較容易修改。
共享使用行為指令的檔案
如果您計劃和其他使用者共用 FLA 檔,而且您使用放在物件上或物件內 (例如影片片段) 的 ActionScript,即使其他使用者使用「影片結構檢視器」來搜尋整份文件,也以難找到程式碼的位置。
如果您正在處理的是複雜的文件,請清楚地記錄行為指令的使用。 此外,也應根據應用程式的大小,建立流程圖、清單,或在主「時間軸」上的集中位置中使用清楚的文件註解。
如果您建立的 FLA 檔,程式碼位於整份文件的許多位置,且您計畫共用檔案,請在主「時間軸」上的「影格 1」加上註解,告知使用者何處可找到程式碼以及檔案建構的方式。 下列範例將示範可告訴使用者 ActionScript 所在位置的註解 (在「影格 1」上):
/*
使用行為放置在元件實體和影片片段內部的ActionScript。
使用影片瀏覽器來尋找ActionScript
*/
如果可以輕易找到程式碼、沒有共享文件,或者所有程式碼都是放在主「時間軸」的影格上,您就不必使用這項技巧。