在实际的项目应用中,常常会遇到现场产生的报警要求有声音提示的需求,而紫金桥软件实现声音报警也有多种方式,这里总结一下几种常用的方式:使用媒体播放组件、函数、系统自带的预定义动作功能,不过要注意无论哪种方式都不支持在ie客户端上使用。下面就分别介绍一下这三种方式的实现过程:
使用媒体播放组件结合增强型报警组件可以很方便的控制报警声音的播放。为了方便介绍,再对需求细化一下,就是只要有未确认的报警就会播放报警声音文件。
1.在软件的子图里可以找到媒体播放器控件组件:
拖曳到窗口上并命名这里是DM。
对媒体播放器对象属性进行简单配置:
在初始播放里关联声音文件,这里因为不需要界面所以界面模式设置成简洁方式。
2.同理再找到增强型报警组件并在画面上组态:
并将此控件命名为alarm,完成画面组态:
3.脚本组态
在工程的画面/脚本/应用,周期脚本里写如下函数:
这样在工程运行时就可以自动判断未确认的报警并播放报警声音。
这种方式的特点是,灵活性比较好,可以满足多种报警条件触发声音报警,但是要求客户基本掌握媒体播放器组件的配置和函数使用。
紫金桥播放声音的有两个函数:分别是beep()和PlaySound();下面是函数的使用介绍:
说明:系统扬声器发出声响。
参数:Flag: 声音标识。-1和0为两种不同的系统报警声音。
返回值:无。
示例:Bepp(0);//系统扬声器发出0声音标识的系统报警声音
注意:确保参数有效。
说明:播放一段声音文件。
参数:SoundFile: 声音文件名,包括路径名。
Synch: 播放方式。1:同步,播放完程序才继续执行;0:异步,不等播放完,程序继续执行。
返回值:无。
示例:PlaySound("C:\Program Files\Windows NT\Pinball\SOUND1.WAV",1);//同步播放指定的声音文件。
函数使用都很简单但是要注意:beep要求机器主板要有扬声器。
这种方式的特点是,在报警条件满足(类似上面的提到的有未确认的报警),即调用这两函数之一都可以播放声音。和上一种方式类似灵活性比较好,可以满足多种报警条件触发的声音报警。
紫金桥软件也提供了方便的播放声音文件的预定义功能,只要简单的配置就可以使用。
在开发环境里的画面/脚本/条件脚本,预定义动作可以勾选语音播放的选项:
上述两个勾选都可以产生报警。(条件脚本的使用可以参照软件的帮助主题中的具体介绍)同时,报警条件既可以使用预定义条件也可以自己编写条件表达式。
这种方式的特点是,使用起来比较简单,只需要简单的组态即可以完成功能,但是相对前面的两种方式灵活性差一些。