我們都知道,在authorware中提供了“pull-down menu”這種交互方式,利用它可以制作出菜單交互。不過,要用它來制作多級菜單卻總是不行。其實,在authorware的安裝程序中,macromedia公司在winapi.u32中為我們準備了這樣的外部函數,利用它們,我們同樣可以制作出標準的windows多級菜單。有興趣嗎?一塊來試試。
原有file菜單的擦除
在用authorware的菜單交互制作菜單時,authorware總會在菜單欄上加一個“file”菜單。這個“file”菜單與我們的作品總是那么不協調。所以咱們先想辦法去掉這個“file”菜單。
在主流程線上拖一個交互圖標,命名為“file”,在其右側放一個組圖標(內容為空),在彈出的“response type”對話框中,選擇“pull-down menu”(菜單交互)。雙擊組圖標上方的小方塊,彈出屬性對話框,在“response”選項卡中,將“perpetual”復選項選中,其他選項就用默認的好設置。
在交互圖標的下方,放一個擦除圖標,雙擊打開擦除圖標的屬性對話框,則同時交互圖標的演示窗口也會被打開。用鼠標單擊交互圖標演示窗口標題欄上的“file”菜單。仔細看,那個“file” 菜單會隨之消失,確認就行了。流程線如圖1所示。
圖1
現在執行一下看看,你的菜單欄是不是很干凈了?現在我們可以根據自己的需要來制作自己的菜單了。
多級菜單的制作
1、在流程線上再放一個交互圖標,命名為“中國電腦教育報”,在其右側放一個組圖標,在彈出的“response type”對話框中,選擇“pull-down menu”。將這個組圖標命名為“專題”。雙擊組圖標上方的那個矩形色塊,在彈出的“properties:response”對話框中,點擊“response”選項卡,選中其中的“perpetual”復選項,并將“branch”的值選為“return”(如圖2)。
您可以繼續添加幾個這樣的組圖標,分別命名為“社會培訓”、“專題”等等,當然隨便您啦。不過,我們的下一級菜單是要加在“軟件.net”下的,所以在這里就不用加了。
圖2
2、按同樣的方法,在主流程線上再放一個交互圖標,其右側也放幾個組圖標,分別命名為“在線學堂”、“網絡無限”、“多媒體”、“經驗技巧”、“無憂問答”等。各項設置同上面的步驟一樣。惟一的不同,就是要把交互圖標的命名刪除,也就是說要讓這個交互圖標的名字為空(如圖3)。
圖3
3、在主流程線的下方加一個計算圖標,命名為“多級菜單制作”,雙擊打開其輸入窗口,輸入如下內容:
menuhandle:=getmenu(windowhandle)
subhandle1:=getsubmenu(menuhandle,0)
subhandle2:=getsubmenu(menuhandle,1)
removemenu(menuhandle,1, 1024)
drawmenubar(windowhandle)
insertmenu(subhandle1,0,1040,subhandle2,"軟件.net")
輸入結束后,別忘了要保存一下喔!這時,系統會給出一個“where is function getsubmenu()?”對話框,詢問在哪里可以找到這些函數(如圖4)。這些函數都是authorware自帶的,它們都藏身于winapi.u32。通常情況下,您可以在authorware的安裝目錄下找到它,找到后打開就行了。友情提示:先輸入再找函數的好處是省得您一個個地加載函數。
圖4
ok,現在把程序做完了。喂!先別忙著執行?。∥疫€沒說完呢。這個效果您得打包以后才能看得到。在源文件中執行是看不到效果的(可不是我的方法不行啊)。
什么,打包您還不會?那沒有關系,那就點擊菜單“file→publish→package…”,然后彈出“package file”對話框,在“package file:”下拉列表中選擇“for windows 9x and nt…”,其他設置如圖5所示,點擊“save file(s) && package”按鈕就行了。authorware會把打包后的執行文件放到源程序所在的目錄下,并且打包后的文件與源程序文件同名。
圖5
圖6
好了,打包完了嗎?現在您可以執行一下打包后的文件了。本例的效果如圖6所示。
對了,如果您要到別的計算機上演示的話,可別忘了把那個winapi.u32拷到打包文件所在的目錄下啊。不然,會看不到效果的喔!
新聞熱點
疑難解答