VFP中实现背景音乐的几种方法

该文章已生成可运行项目,

一、利用set bell to 

VFP5.0的set bell to命令的使用格式不同于FoxPro2.X的格式。在VFP5.0中,它的格式为Set Bell To [cWAVFileName, nDuration]。其中cWAVFileName为一个.WAV文件;nDuration为持续时间(注意该项不可省略,否则会产生语法错误)。这样当在个人程序的初始模块中用set bell to 定向到一.WAV文件后,便可在后面的模块中用?chr(7)来播放该.WAV文件。

  示例1:

set bell on &&使bell有效  set bell to′ .WAV文件′,0 &&使bell定向到一个.WAV 文件。注意有单引号  ?chr(7)  &&播放该.WAV文件

二、利用OLE容器控件

创建一表单,单击表单控件工具栏中的“OLE容器控件”按钮,然后在表单上适当位置点击或拖动。在出现的“Insert Object”窗口中选“Creat New”或“Creat From File”,用“Browse”按钮选取自己的.WAV文件,确定即可。

在当前表单中会出现一“喇叭”图标,设置该图标的属性“ AutoActivate”为1,可使每当表单运行时自动播放该.WAV文件,实现背景音乐;设置Height、Width均为0时,可隐藏“喇叭”图标。

三、利用VFP库Foxtools.fll

用=Regfn()和=Callfn()可访问Foxtools.fll中的音频模块,进行播放声音文件。

  示例2:

  创建一表单,在其Activate事件中输入下列代码:

public ss &&定义一全局变量ss  set library to foxtools.fll &&打开库Foxtools.fll  ss=Regfn(″SndPlaySound″,″CI″,″I″,″mmsystem″) &&取得音频信息  =Callfn(ss,″一.wav文件″,n) &&n=0(1,2,3也可)时只播放一遍,n=9时循环播放

  在其Destroy事件中输入下列代码:

=Callfn(ss,″″,10) &&停止播放  set library to &&从内存中释放库foxtools.fll

四、利用Windows的动态链接库

在VFP5.0的安装目录samples\classes下,有一类库samples\classes。其中提供有两种控件:视频和音频,音频可以控制播放.WAV和.MID文件,利用它可轻松地实现背景音乐。下面给出它的实例。

  示例3:

  创建一表单,在表单控件工具栏中选择类按钮,添加VFP5.0中的samples\classes\samples.vbx类库。此时表单控件工具栏中会出现SoundPlayer和VideoFrame两个多媒体控件。选择SoundPlayer,在表单上单击后,设置它的属性如下:

AutoOpen=.t.  AutoPlay=.t.  AutoRepeat=.t.  Class=SoundPlayer  Soundfile=指定一.WAV或.MID文件 &&注意没有引号  Visible=.f. &&不可见

以上几种方式各有优缺点,应用时要注重满足自己的编程需要。若你有更好的方法,欢迎来信共同探讨。

猫猫的心里话

加菲猫的VFP|狐友会社群接收投稿啦

加菲猫的VFP,用VFP不局限VFP,用VFP混合一切。无论是VFP,还是JS,还是C,只要能混合起来,都可以发表。

商业模式,销售技巧、需求规划、产品设计的知识通通可以发表。

暂定千字50元红包,,优秀的文章红包更大,一经发表,红包到手。

如何帮助使用VFP的人?

用VFP的人,有专业的,有非专业了,很多人其实是小白,问出的问题是小白,如果问题不对,我们引导他们问正确的问题。无论如何请不要嘲笑他们说帮助都不看,这么简单的问题都不会,嘲笑别人不行,而无法提出建设性答案,是很low的。

我们无论工作需要,还是有自己的软件,都是是需要真正的知识,如何让更多人学习真正的VFP知识呢,只需要点赞,在看,能转发朋友圈就更好了。

加菲猫的vfp倡导用"VFP极简混合开发,少写代码、快速出活,用VFP,但不局限于VFP,各种语言混合开发"

我已经带领一百多名会员成功掌到VFP的黑科技,进入了移动互联网时代,接下来我们要进入物联网领域。

2025年狐友会社群会员继续招募中

社群会员获取的权益有:

祺佑三层开发框架商业版(猫框),终身免费升级,终身技术支持。

开放的录播课程有:

微信小程序,微信公众号开发,H5 APP开发,Extjs BS开发,VFP面向对象进阶,VFP中间层开发。

源码类资源有:

支付组件源码,短信源码,权限组件源码,一些完整系统的源码。这个可以单独出售的,需要的可以联系我。

会员也可以实现群内资源对接,可以接分包,合作等各项商业或技术业务

本文章已经生成可运行项目
Visual FoxPro 9.0多媒体三维图形编程 Visual FoxPro 9.0多媒体三维图形编程工具包含三部分库函数构成,OpenGL库, DxInput库,DxAudio库等三部分,这三部分合并到DLGame.fll库文件中。 OpenGL(全写Open Graphics Library)是定义了一个跨编程语言、跨平台的编程接口,它用于三维图象(二维的亦可)。 OpenGL是个专业的图形程序接口,是一个功能强大,调用方便的底层图形库。 OpenGL不是语言,是专业的图形程序接口。现在Windows系统的主流编译环境有Visual C++/C#,Broland C++ Builder,Dev-C++等,它们都是支持OpenGL的。今天我把他移植到了Visual Foxpro9中,为喜爱图形设计的狐友带来福音。 OpenGL原函数为C函数,我们通过FLL库,封装到了DLGame.fll库中,大多数函数的名称和定义都和原C函数相同,因此具有很强的移植性。 DxInput库是封装了微软DirectX的DirectInput开发工具库,使键盘,鼠标,游戏杆的控制编程更加高效和简单。这些函数也封装到了DLGame.fll库中 DxAudio库是封装了微软DirectX的DirectAudio开发工具库,DirectAudio包含两部分,DirectMusic和DirectSound。DirectMusic用于播放音效的mid格式文件,通常用于背景音乐。DirectSound用于播放wav格式的音乐文件,一般用于音效效果。通过我们的封装,对音乐编程更加高效和简单。这些函数也封装到了DLGame.fll库中 一般编程语言必须先编译再运行,调试麻烦。VFP有先天的优势,边解释边运行。可以说,程序编写完成就可以通过DO命令运行程序。 完整例子,可以在我们帮助中点红色感叹号运行。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值