在pb中实现声音文件的播放


个商业软件不仅要功能强大,而且界面也要美观,如果加入适量声音会增强软件的人机交互性,让软件给人更为深刻的印象。 pb 作为客户 / 服务器的客户端开发工具,在数据库管理上有强大的功能,但 pb 中本身没有播放声音的函数、对象。我们知道在 windowsapi 函数中有 “sndplaysounda” 可实现声音文件的播放。要在 pb 中调用该函数可按下例实现。


1.首先在declare菜单项中的globalexternal functions中定义引用的windowsapi 函数。

functionboolean sndplaysounda (string soundname, uint flags) library″winmm.dll″
functionuint waveoutgetnumdevs () library″winmm.dll″

2.然后定义一个播放声音文件的函数。

  函数名与参数:f—playwave(s—wavename,i—option) 
   
s—wavename:是要播放的声音文件,数据类型为string
   
i—option:是播放时的控制参数,数据类型为integer
i—option=0(同步播放)i—option=1(异步播放)
  返回值说明:本函数返回值类型为integer,1表示播放成功,-1表示播放失败。
  函数内容:

booleanxx
uintlui—numdevs
lui—numdevs= waveoutgetnumdevs() 
iflui—numdevs > 0 then 
   
      xx=sndplaysounda(s—wavename,i—option)
          if xx=true then
                 return 1
         else
                return 1
   
      endif
else
      return 1
endif

3.在程序中调用。

  下面的程序是实现同步播放名为“a1.wav"的声音文件:

stringls—soundname
intll—rtn
    
ls—soundname=″c:\wave\a1.wav″

ll—rtn=f—playwave(ls—soundname,0)

  • 0
    点赞
  • 4
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值