亚洲免费av电影一区二区三区,日韩爱爱视频,51精品视频一区二区三区,91视频爱爱,日韩欧美在线播放视频,中文字幕少妇AV,亚洲电影中文字幕,久久久久亚洲av成人网址,久久综合视频网站,国产在线不卡免费播放

        ?

        Authorware菜單的改進

        2007-01-01 00:00:00潘慶超
        計算機時代 2007年3期

        摘要:利用Authorware外部擴展函數(shù),對Authorware中的菜單進行改進,在Authorware中實現(xiàn)了多級菜單和右鍵彈出菜單。

        關(guān)鍵詞:Authorware;外部擴展函數(shù);多級菜單;彈出菜單

        0引言

        Authorware提供了\"Pull-Down Menu”這種交互方式,利用它可以制作出菜單。不過,與常見的多級Windows標準菜單相比,它的菜單大為遜色,而右鍵彈出菜單就更無法制作。其實,在Authorware的安裝程序中,Macromedia公司為我們準備了一些外部擴展函數(shù),利用它們,可以制作出多級Windows標準菜單和右鍵彈出菜單。

        1必需的外部擴展函數(shù)

        這里我們要借助Authorware的外部擴展函數(shù):Winapi.u32和tMsControls.u32來制作多級標準Windows菜單和右鍵彈出菜單,這兩個外部擴展函數(shù)是免費U32(UserCode),在Authorware安裝目錄里可以找到。Winapi.u32的導(dǎo)入方法如下:單擊\"window\"菜單中的\"function\"項,顯示\"Load function\"操作窗口;在文件名一欄輸入Winapi.u32,單擊“打開按紐”,顯示“Custom functions inWINAPI.U32\";按住Ctrl鍵,在\"name:\"一欄中選對應(yīng)的函數(shù)后單擊\"Load\"按鈕即完成。tMsControls.u32函數(shù)的導(dǎo)入方法相同。

        所需的Winapi.u32函數(shù)與功能描述:

        GetMenu(WindowHandle):獲取窗體菜單的句柄

        GetSubMenu(menuhandle,npos):獲取用戶菜單的句柄

        RemoveMenu(menuhandle,position,flag):從窗體中擦除指定菜單

        DrawMenuBar(WindowHandle):顯示窗體菜單

        InsertMenu(submenuhandlel,positon,flag,submenuhandle2,

        newsubmenuname):向submenuhandl增加一個新條目,位置

        position,名字newsubmenuname,增加方式由flag決定

        tMsControls.u32必需的部分函數(shù)與功能描述:

        tMsCreatePopupList(windowHandle):創(chuàng)建一個彈出菜單,控制并

        返回該菜單的句柄

        tMsAddltem(ControlHandie。menultemNo,submenultemNo,

        menuText):菜單中增加一個條目

        tMsDisplayControl(ControlHandle。X,Y。Width。Height,Return):

        在指定位置顯示菜單

        2制作多級標準菜單

        2.1原有File菜單的擦除

        在用Authorware的菜單交互制作菜單時,Authorware總會在菜單欄上加一個\"File\"菜單。這個\"File”菜單是多余的,所以先去掉這個\"File\"菜單。

        在主流程線上拖一個交互圖標,命名為\"File\",在其右側(cè)放一個群組圖標(內(nèi)容為空),在彈出的\"Response Type,’對話框中,選擇“Pull-Down Menu”(菜單交互)。雙擊群組圖標上方的小方塊,彈出屬性對話框,在“Response”選項卡中,將\"Perpetual\"復(fù)選項選中。

        在交互圖標的下方,放一個擦除圖標,雙擊打開擦除圖標的屬性對話框,則同時交互圖標的演示窗口也會被打開。用鼠標單擊交互圖標演示窗口標題欄上的“File”菜單,演示窗口中的\"File\"菜單會隨之消失,點擊確認完成。如圖1所示。

        2.2多級菜單的制作

        制作步驟如下:

        (1)建立“文件”和“編輯”菜單。在流程線上拖放一個交互圖標,命名為“文件”,在其右側(cè)放一個群組圖標,在彈出的“Response Type\"對話框中,選擇\"Pull-Down Menu”,將這個組圖標命名為“新建”。雙擊群組圖標上方的矩形色塊,在彈出的“Properties:Response\"對話框中,點擊\"Response\"選項卡,選中其中的“Perpetual”復(fù)選項,并將“Branch”的值選為“Return”。繼續(xù)添兩個這樣的群組圖標,分別命名為“保存”、“退出”。

        (2)建立“塊操作”菜單。按同樣的方法,在主流程線上再放一個交互圖標,其右側(cè)也放兩個群組圖標,分別命名為“撤消”、“查找”。各項設(shè)置同上面的步驟一樣。這個菜單是要作為下一級菜單插入到“編輯”菜單中的。

        (3)添加程序代碼。在主流程線下方加一個計算圖標,命名為“menu script”,雙擊打開窗口,輸入如下內(nèi)容:

        menuhandle:=GetMenu(WindowHandIe)

        file_handle:=GetSubMenu(menuhandIe,0)

        edit_handle::GetSubMenu(menuhandIe,1)

        block_handle::GetSubMenu(menuhandIe,2)

        RemoveMenu(menuhandle,2.1024)

        DrawMenuBar(WindowHandIe)

        InsertMenu(edit_handle,1,1040,block_handIe,”塊操作”)

        所用變量初始值賦為空即可,運行結(jié)果如圖2所示,設(shè)計圖如圖3所示。

        3制作右鍵彈出菜單

        在流程線上拖放一個交互圖標,命名為“popupmenu”,在其右側(cè)放一個群組圖標,在彈出的“Response Type”對話框中,選擇“Conditional”。將這個組圖標命名為“RightMouseDown=TRUE”。雙擊群組圖標上方的矩形色塊,在彈出的\"Properties:Response”對話框中,點擊“Response”選項卡,選中其中的“Perpetual”復(fù)選項,并將“Branch”的值選為“Continue”。雙擊群組圖標,打開它,在流程線的下方加一個計算圖標,命名為“popupmenu script”。雙擊打開輸入窗口,輸入如下內(nèi)容:popupHandle:~MsCreatePopupList(WindowHandIeltMsAddltam(popupHandle,1,0,“復(fù)制”)tMsAddltem(popupHandIe,2,0,“剪切”)tMsAddltem(popupHandIe,3,O,“粘貼”)popresult:=tMsDisplayControl(popupHandle,CursorX,Cursory,120,100,0)

        最后,將所用到的變量初始值賦為空即可。設(shè)計圖如圖4所示。

        這樣,當用戶進行鼠標右鍵操作時:條件為真,則系統(tǒng)執(zhí)行計算圖標里的代碼后并彈出菜單,在鼠標右鍵點擊處,彈出一個設(shè)定好的彈出式菜單,并將用戶所選擇的菜單項返回給變量popresult。程序運行結(jié)果如圖5所示。

        4打包運行

        軟件制作完成后,要對其進行package。方法是依次點擊菜單“File Pubhsh---*Package”,在彈出“Package File”對話框的“Package File:”下拉列表中選擇\"For Windows XP,NT and 98Variant\",然后點擊\"Save File(s)Pac’Kage”按鈕。Authorware會把打包后的執(zhí)行文件放到源程序所在的目錄下,并且打包后的文件與源程序文件同名。如果需要把執(zhí)行文件異機演示,不要忘了把兩個外部擴展函數(shù)Winapi.u32和tMsCOntrols.u32復(fù)制到執(zhí)行文件所在的目錄下。

        5結(jié)束語

        Authorware中的菜單交互功能有限,實現(xiàn)多級標準菜單和右鍵彈出菜單的方法有很多種。本文僅用外部擴展函數(shù)對其進行改進,使其能在使用時更加方便靈活。使用SDK工具對現(xiàn)有軟件進行開發(fā)是軟件編程人員經(jīng)常遇到的情況,它也為我們進一步改善軟件功能提供了一種解決方法。

        (注:本文中所涉及到的圖表、注解、公式等內(nèi)容請以PDF格式閱讀原文。)

        人妻av乱片av出轨| 高清不卡av一区二区| 国产一区二区三区精品免费av| 成人国产精品一区二区网站公司| 五月色丁香婷婷网蜜臀av| 伊人久久大香线蕉综合网站| 国产高清无码在线| 中文字幕一区二区三区.| 国产一区二区av免费观看| av狠狠色丁香婷婷综合久久| 国产mv在线天堂mv免费观看| 日韩人妻无码精品二专区| 国产人妖在线视频网站| 亚洲av成人网| 亚洲综合色丁香婷婷六月图片| 亚洲αv在线精品糸列 | 中文字幕一区在线直播| 国产精品亚洲综合色区| 久久AⅤ无码精品为人妻系列 | av国产免费在线播放| 国产精品 无码专区| 亚洲av无码乱码国产精品fc2| 久久99亚洲网美利坚合众国| 情av一区二区三区在线观看| 国产两女互慰高潮视频在线观看 | 桃花影院理论片在线| 人妻久久999精品1024| 亚洲国产精品综合福利专区 | jiZZ国产在线女人水多| 亚洲免费一区二区三区四区| 欧美另类人妖| 国产一国产一级新婚之夜| 国产视频在线播放亚洲| 国产自国产自愉自愉免费24区| 中文字幕无码不卡一区二区三区| 99久久久精品免费| 99久久精品人妻少妇一| 影音先锋中文字幕无码资源站| 五月婷婷六月激情| 男的和女的打扑克的视频| 久久成人成狠狠爱综合网|