vfp怎样能使 运行表单时自动播放音乐,结束运行时背景音乐自动停止?
我使用的是OLE控件,在表单上出现了个小喇叭,运行时双击小喇叭背景音乐就开始了,但是我结束运行时音乐还在继续,一直播到音乐结束为止。我现在想让喇叭看不见(我已经设了长宽为...
我使用的是OLE控件,在表单上出现了个小喇叭,运行时双击小喇叭背景音乐就开始了,但是我结束运行时音乐还在继续,一直播到音乐结束为止。我现在想让喇叭看不见(我已经设了长宽为0),而且不需双击,运行表单时自动播放音乐,结束运行时背景音乐自动停止,可以实现吗?
展开
展开全部
一、利用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的安装目录samplesclasses下,有一类库samplesclasses。其中提供有两种控件:视频和音频,音频可以控制 ?.WAV和.MID文件,利用它可轻松地实现背景音乐。下面给出它的实例。
示例3:
创建一表单,在表单控件工具栏中选择类按钮,添加VFP5.0中的samplesclassessamples.vbx类库。此时表单控件工具栏中会出现SoundPlayer和VideoFrame两个多媒体控件。选择SoundPlayer,在表单上单击后,设置它的属性如下:
AutoOpen=.t.
AutoPlay=.t.
AutoRepeat=.t.
Class=SoundPlayer
Soundfile=指定一.WAV或.MID文件 &&注意没有引号
Visible=.f. &&不可见
以上几种方式各有优缺点,应用时要注重满足自己的编程需要。
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的安装目录samplesclasses下,有一类库samplesclasses。其中提供有两种控件:视频和音频,音频可以控制 ?.WAV和.MID文件,利用它可轻松地实现背景音乐。下面给出它的实例。
示例3:
创建一表单,在表单控件工具栏中选择类按钮,添加VFP5.0中的samplesclassessamples.vbx类库。此时表单控件工具栏中会出现SoundPlayer和VideoFrame两个多媒体控件。选择SoundPlayer,在表单上单击后,设置它的属性如下:
AutoOpen=.t.
AutoPlay=.t.
AutoRepeat=.t.
Class=SoundPlayer
Soundfile=指定一.WAV或.MID文件 &&注意没有引号
Visible=.f. &&不可见
以上几种方式各有优缺点,应用时要注重满足自己的编程需要。
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询