国产探花免费观看_亚洲丰满少妇自慰呻吟_97日韩有码在线_资源在线日韩欧美_一区二区精品毛片,辰东完美世界有声小说,欢乐颂第一季,yy玄幻小说排行榜完本

首頁 > 網站 > 媒體動畫 > 正文

Authorware類和函數:authorware里面運用JumpOutReturn()函數

2024-09-08 19:24:38
字體:
來源:轉載
供稿:網友
當你調用jumpoutreturn()函數打開外部文件,authorware本身并沒有停下來,而是沿"線"繼續運行。如何才能使authorware在播放外部文件的時候,暫停下來呢?也許你會用等待圖標,或一個交互按鈕,但有時這樣滿足不了要求。例如,依次連續播放幾個外部文件(當然這些文件在authorware本身是不能播放的),當一個文件播完后,返回authorware,另一個文件自動打開播放或向下執行其他內容。

  解決的方法是,調用winapi。winapi有一個getactivewindow()函數,用來返回當前活動窗口的句柄(handle)。比較使用jumpoutreturn()前后當前活動窗口句柄,即可判斷外部文件是否播放完畢,authorware是否是當前窗口,再采取相應操作。

  以下介紹這個問題在authorware各個版本中解決方法。

authorware4.0或4.0以后版本

  1.載入getactivewindow()函數:此函數在winapi.u32中,winapi.u32位于authorware程序目錄下.在載入winapi.u32過程中,只選擇getactivewindow()函數即可,其余不需載入authorware.

  2.在jumpoutreturn()函數前,加入一個變量oldhandle:=getactivewindow(), oldhandle初始值可以不設定.

  3.添加一個等待圖標,位于jumpoutreturn()所在計算圖標后,無按鈕,無響應,僅設定等待1秒.

  4.在等待圖標后添加一個判斷圖標(dicision icon),附一個計算圖標于此判斷圖標,設定判斷圖標為sequential-repeat until true.

  5.在repeat until true field中輸入: handle=oldhandle

  6.當新參數窗口出現時,點擊確定,不需輸入初始值.

  7.在附著計算圖標中,輸入:handle:=getactivewindow()

  例子如下:

  以上例子實現的功能是:調用外部播放器scplayer.exe來依次播放文件auto1.scm和auto2.scm. jumpoutreturn()函數參數參考如下:jumpoutreturn(filelocation^".//scrncam//scplayer.exe" ,filelocation^ ".//lotus//auto1.scm /s/h/c ").當auto1.scm文件播放完畢后,播放窗口關閉,回到authorware,又一個junmoutreturn()跳到auto2.scm文件......

  對于authorware4.0以下版本,裝載getactivewindow()函數的過程有點不同.裝載getactivewindow(),要選擇user.exe,user.exe文件位于/window/system目錄下,在出現的dll對話框中,有以下幾項需要填寫,且大小 匭胝?(a).function name field: getactivewindow (b).arguments field: void (c).return field: word.點擊"load",getactivewindow()函數已被提取.其余步驟同上.

  目前出現的問題是,當外部文件沒有播放完畢時,人工干預使authorware成為當前活動窗口,此時,程序向下繼續執行。如果此時再次打開一個外部文件,將會出現兩個外部文件窗口,這是我們不想看到的。仔細看一下junmoutreturn()函數會發現,其還有一個可選參數:creator type,具體怎么指定,我沒查到。authorware能否指定窗口打開外部程序呢?在此提出,共同探討。

發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
主站蜘蛛池模板: 乳山市| 安多县| 天镇县| 榕江县| 习水县| 闵行区| 柘城县| 庆云县| 桐城市| 河东区| 北海市| 海林市| 洛川县| 丰原市| 南召县| 左贡县| 涞源县| 松原市| 广德县| 合阳县| 酒泉市| 乐平市| 沅江市| 怀远县| 苏尼特左旗| 白山市| 石林| 施秉县| 顺义区| 蕉岭县| 山东| 南通市| 万荣县| 海城市| 明光市| 枣强县| 花莲市| 云和县| 石楼县| 白玉县| 通河县|