在實(shí)際的項(xiàng)目應(yīng)用中,常常會(huì)遇到現(xiàn)場(chǎng)產(chǎn)生的報(bào)警要求有聲音提示的需求,而紫金橋軟件實(shí)現(xiàn)聲音報(bào)警也有多種方式,這里總結(jié)一下幾種常用的方式:使用媒體播放組件、函數(shù)、系統(tǒng)自帶的預(yù)定義動(dòng)作功能,不過要注意無論哪種方式都不支持在ie客戶端上使用。下面就分別介紹一下這三種方式的實(shí)現(xiàn)過程:
一.使用媒體播放組件實(shí)現(xiàn)
使用媒體播放組件結(jié)合增強(qiáng)型報(bào)警組件可以很方便的控制報(bào)警聲音的播放。為了方便介紹,再對(duì)需求細(xì)化一下,就是只要有未確認(rèn)的報(bào)警就會(huì)播放報(bào)警聲音文件。
1. 在軟件的子圖里可以找到媒體播放器控件組件:

拖曳到窗口上并命名這里是DM。
對(duì)媒體播放器對(duì)象屬性進(jìn)行簡(jiǎn)單配置:

在初始播放里關(guān)聯(lián)聲音文件,這里因?yàn)椴恍枰缑嫠越缑婺J皆O(shè)置成簡(jiǎn)潔方式。
2. 同理再找到增強(qiáng)型報(bào)警組件并在畫面上組態(tài):

并將此控件命名為alarm,完成畫面組態(tài):

3. 腳本組態(tài)
在工程的畫面/腳本/應(yīng)用,周期腳本里寫如下函數(shù):

這樣在工程運(yùn)行時(shí)就可以自動(dòng)判斷未確認(rèn)的報(bào)警并播放報(bào)警聲音。
這種方式的特點(diǎn)是,靈活性比較好,可以滿足多種報(bào)警條件觸發(fā)聲音報(bào)警,但是要求客戶基本掌握媒體播放器組件的配置和函數(shù)使用。
二.使用聲音播放函數(shù)實(shí)現(xiàn):
紫金橋播放聲音的有兩個(gè)函數(shù):分別是beep()和PlaySound();下面是函數(shù)的使用介紹:
beep(Int Flag)
說明:系統(tǒng)揚(yáng)聲器發(fā)出聲響。
參數(shù):Flag: 聲音標(biāo)識(shí)。-1和0為兩種不同的系統(tǒng)報(bào)警聲音。
返回值:無。
示例:Bepp(0);//系統(tǒng)揚(yáng)聲器發(fā)出0聲音標(biāo)識(shí)的系統(tǒng)報(bào)警聲音
注意:確保參數(shù)有效。
PlaySound(String SoundFile, Int Synch)
說明:播放一段聲音文件。
參數(shù):SoundFile: 聲音文件名,包括路徑名。
Synch: 播放方式。1:同步,播放完程序才繼續(xù)執(zhí)行;0:異步,不等播放完,程序繼續(xù)執(zhí)行。
返回值:無。
示例:PlaySound("C:\Program Files\Windows NT\Pinball\SOUND1.WAV",1);//同步播放指定的聲音文件。
函數(shù)使用都很簡(jiǎn)單但是要注意:beep要求機(jī)器主板要有揚(yáng)聲器。
這種方式的特點(diǎn)是,在報(bào)警條件滿足(類似上面的提到的有未確認(rèn)的報(bào)警),即調(diào)用這兩函數(shù)之一都可以播放聲音。和上一種方式類似靈活性比較好,可以滿足多種報(bào)警條件觸發(fā)的聲音報(bào)警。
三.通過系統(tǒng)提供的預(yù)定義功能來實(shí)現(xiàn)
紫金橋軟件也提供了方便的播放聲音文件的預(yù)定義功能,只要簡(jiǎn)單的配置就可以使用。
在開發(fā)環(huán)境里的畫面/腳本/條件腳本,預(yù)定義動(dòng)作可以勾選語音播放的選項(xiàng):

上述兩個(gè)勾選都可以產(chǎn)生報(bào)警。(條件腳本的使用可以參照軟件的幫助主題中的具體介紹)同時(shí),報(bào)警條件既可以使用預(yù)定義條件也可以自己編寫條件表達(dá)式。
這種方式的特點(diǎn)是,使用起來比較簡(jiǎn)單,只需要簡(jiǎn)單的組態(tài)即可以完成功能,但是相對(duì)前面的兩種方式靈活性差一些。
|