本節要點:在authorware中插入swf文件 了解activex
本例簡介:在authorware中插入swf文件很簡單,只要使用“insert”>>“media”>>“flash...”就可很方便地插入flash的swf文件。要將flash中的變量傳遞給authorware,就要使用“shockwave flash object”activex控件。
完成后流程圖:
運行界面:
制作步驟:
1、首先制作一個flash文件,命名為“flash”。在其中有設置變量的action script,本例中使用了“fscommand ("variable", "文件"); ”等語句。完成后發布為swf文件。如果你對flash不熟悉,請參考相關資料。
2、新建一個authorware文件,使用“insert”>>“control”>>“activex...”命令,打開選擇activex窗口。找到并選中“shockwave flash object”控件后,單擊“ok”確定。這時可見流程線上出現一個“activex”圖標,將其命名為“activex”。
3、向流程線上拖入一個計算圖標和一個交互圖標,并分別命名為“play flash”和“dispaly variable”。“play flash”中的內容為:
setspriteproperty(@"activex", #movie, filelocation^"flash.swf")
callsprite(@"activex", #play)
意思為告訴swf文件的位置和開始播放flash.swf文件。
“dispaly variable”中為顯示變量的內容。打開其設計窗口,在其中輸入“{myvariable}”,意思是顯示變量myvariable的值,這個變量將在下面定義。
4、向“dispaly variable”圖標的右方拖入一個計算圖標,命名為“get variable”,并將交互響應類型設為“事件(event)”。這時在“get variable”圖標上方出現一個小圖標,雙擊該圖標,出現交互屬性設置對話框。雙擊“sender”選項中的“icon activex”,使其前面有個叉號,再雙擊“event”選項中的“fscommand”,使其前面也有個叉號,確定剛才的設置。
5、打開“get variable”圖標,在其中輸入以下內容:
evalassign(eventlastmatched[#command]^" := eventlastmatched[#args]")
if variable="0" then
myvariable:=""
else
myvariable:="你剛才按下了 "^variable^" 菜單"
end if
這些語句的意義是從flash文件中讀取變量“variable”的值。如果沒有按下菜單,那么不顯示任何內容。這些語句的詳細解釋請參考authorware相關文檔。
技巧提示:activex控件內容大小的更改,應該在程序運行時,使其暫停,雙擊activex控件內容,出現虛線框,拖動其邊上和角上的控點,改變其大小。
源文件:本例要求對flash和authorware都相當熟悉,請大家下載源程序,仔細琢磨。點擊這里下載
新聞熱點
疑難解答