| 网站首页 | 业界新闻 | 小组 | 威客 | 人才 | 下载频道 | 博客 | 代码贴 | 在线编程 | 编程论坛
欢迎加入我们,一同切磋技术
用户名:   
 
密 码:  
共有 513 人关注过本帖, 3 人收藏
标题:vfp音乐问题
只看楼主 加入收藏
woaini314
Rank: 1
等 级:新手上路
帖 子:5
专家分:0
注 册:2012-11-27
结帖率:0
收藏(3)
已结贴  问题点数:10 回复次数:4 
vfp音乐问题
VFP 表单中 实现 点击一个按钮,就播放指定音乐怎么实现?如果是对按钮写入代码,需要怎么写..
搜索更多相关主题的帖子: 音乐 表单 
2012-12-13 22:07
tlliqi
Rank: 19Rank: 19Rank: 19Rank: 19Rank: 19Rank: 19
等 级:贵宾
威 望:204
帖 子:15453
专家分:65956
注 册:2006-4-27
收藏
得分:5 
程序代码:
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=01,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. &&不可见

收到的鲜花
  • 月沐庭轩2012-12-14 09:31 送鲜花  10朵   附言:好文章
  • qingfameng2012-12-15 00:51 送鲜花  10朵   附言:我很赞同
2012-12-13 23:41
qingfameng
Rank: 12Rank: 12Rank: 12
等 级:贵宾
威 望:35
帖 子:964
专家分:3019
注 册:2010-2-6
收藏
得分:5 
1楼:2楼介绍的很好。可以参考。还有一个法可试试。
你也可以在按钮的 click 中,写上如下代码。(先选择一个歌曲文件,再确认,能打开好多种类的文件.如果你知道文件位置,可以不用选择,直接打开播放)
cdr=getfile()
cdr=alltrim(cdr) && 文件位置
if empty(cdr)
   return
endif   
 DECLARE INTEGER ShellExecute IN "Shell32.dll" INTEGER hwnd,STRING lpVerb,;
 STRING lpFile,STRING lpParameters,STRING lpDirectory,LONG nShowCmd
 =Shellexecute(0,"Open","&cdr","","",1)
2012-12-14 11:15
woaini314
Rank: 1
等 级:新手上路
帖 子:5
专家分:0
注 册:2012-11-27
收藏
得分:0 
回复 3楼 qingfameng
不怎么明白 哪里放入歌曲位置 谢谢
2013-01-01 22:28
hu9jj
Rank: 20Rank: 20Rank: 20Rank: 20Rank: 20
来 自:红土地
等 级:贵宾
威 望:400
帖 子:11857
专家分:43421
注 册:2006-5-13
收藏
得分:0 
通过getfile()函数中让用户自己选择要播放的文件。

活到老,学到老!http://www.(该域名已经被ISP盗卖了)E-mail:hu-jj@
2013-01-02 08:37
快速回复:vfp音乐问题
数据加载中...
 
   



关于我们 | 广告合作 | 编程中国 | 清除Cookies | TOP | 手机版

编程中国 版权所有,并保留所有权利。
Powered by Discuz, Processed in 0.036218 second(s), 8 queries.
Copyright©2004-2024, BCCN.NET, All Rights Reserved