| 网站首页 | 业界新闻 | 小组 | 威客 | 人才 | 下载频道 | 博客 | 代码贴 | 在线编程 | 编程论坛
欢迎加入我们,一同切磋技术
用户名:   
 
密 码:  
共有 868 人关注过本帖
标题:[求助]还有一个问题是给MDIForm1窗体添加背景音乐
只看楼主 加入收藏
likanglong
Rank: 1
等 级:新手上路
帖 子:27
专家分:0
注 册:2006-4-1
收藏
 问题点数:0 回复次数:8 
[求助]还有一个问题是给MDIForm1窗体添加背景音乐

(急)
还有一个问题是给MDIForm1窗体添加背景音乐,我试用了很多方法都不行例如如下:
模块代码:
Public Declare Function sndPlaySound Lib "winmm.dll" Alias "sndPlaySoundA" (ByVal lpszSoundName As String, ByVal uFlags As Long) As Long
Public Function PlaySound(File As String)
Const SND_SYNC = &H0
Const SND_ASYNC = &H1
Const SND_NODEFAULT = &H2
Const SND_LOOP = &H8
Const SND_NOSTOP = &H10
wFlags% = SND_ASYNC Or SND_NODEFAULT
Svar = sndPlaySound(App.Path & "\" & File & ".wav", wFlags%)
End Function
窗体代码:
Private Sub Form_Load()
PlaySound "文件名(不带扩展名)"
End Sub
提示wFlags%为定义


还有一种方法是:
添加mmcontrol控件,在引用中Microsoft Multimedia Control 6.0(sp3)
load 中
MMControl1.Notify = False
MMControl1.Wait = True
MMControl1.Shareable = False
MMControl1.DeviceType = "WaveAudio"
MMControl1.FileName = "D:\PlatformTicket\Windows 登录音.wav"
MMControl1.Command = "Open"
MMControl1.Command = "Play"
然后可以在定时器里
If MMControl1.mode = 525 Then '检查是否停止
MMControl1.Command = "Prev"
MMControl1.Command = "Play"
End If
进行循环播放
最后在unload中
MMControl1.Command = "Close"
关闭播放器

问题是怎么在MDIForm1窗体里添加mmcontrol控件

搜索更多相关主题的帖子: 音乐 窗体 
2006-04-12 01:01
li_meng5939
Rank: 1
等 级:新手上路
帖 子:89
专家分:0
注 册:2006-3-24
收藏
得分:0 

你知道那个API函数mciexecute的用法吗
它可以用来播发背景音乐 是专用的


我爱 vb
但我看了两遍书 觉得增长太少
能解决的问题太少了
我想学多点 好点
谢谢个位高手赐教!!
我不甚感激
2006-04-12 18:06
likanglong
Rank: 1
等 级:新手上路
帖 子:27
专家分:0
注 册:2006-4-1
收藏
得分:0 
[求助]用什么方法都行,只要能在MDIForm1窗体添加背景音乐就行

我不知道这个API函数mcieXecute的用法!~
那你帮我用这个API函数mciexecute做一个在MDIForm1窗体里添加背景音乐的程序,好吧
我现在急用啊,谢谢了!~
用什么方法都行,只要能在MDIForm1窗体添加背景音乐就行,对了最好要可以连续的播放啊

2006-04-12 18:56
llx3449
Rank: 1
等 级:新手上路
帖 子:37
专家分:0
注 册:2005-11-7
收藏
得分:0 
http://tech.sina.com.cn/c/2035.html
这个网站有介绍在VB中如何制作背景音乐

2006-04-13 10:36
leon2
Rank: 3Rank: 3
等 级:新手上路
威 望:7
帖 子:731
专家分:0
注 册:2005-3-18
收藏
得分:0 
还是用 sndplaysound 妥当,不过只能播放 wav 文件
Public Declare Function sndPlaySound Lib "winmm.dll" Alias "sndPlaySoundA" (ByVal lpszSoundName As String, ByVal uFlags As Long) As Long
Public Function PlaySound(File As String)
Const SND_SYNC = &H0
Const SND_ASYNC = &H1
Const SND_NODEFAULT = &H2
Const SND_LOOP = &H8
Const SND_NOSTOP = &H10
Svar = sndPlaySound(App.Path & "\" & File & ".wav", SND_ASYNC Or SND_NODEFAULT)
End Function
2006-04-13 13:39
likanglong
Rank: 1
等 级:新手上路
帖 子:27
专家分:0
注 册:2006-4-1
收藏
得分:0 

谢谢各位!~~

问题是解决了,可是新的问题又存在了,在放歌的时候不能操作MDIForm窗体,有什么办法可以边放歌边操作窗体啊,
还请大家帮忙指点啊

2006-04-15 19:01
lanshanlhy
Rank: 1
等 级:新手上路
帖 子:130
专家分:0
注 册:2006-4-16
收藏
得分:0 

恩的确是不错 可行
但是只可以放一遍
如果要不断循环 怎么办?


永远以今天为荣!
2006-04-16 08:46
leon2
Rank: 3Rank: 3
等 级:新手上路
威 望:7
帖 子:731
专家分:0
注 册:2005-3-18
收藏
得分:0 

要循环就加个常数
sndPlaySound App.Path & "\" & File & ".wav", SND_ASYNC Or SND_NODEFAULT Or SND_LOOP

2006-04-16 22:42
likanglong
Rank: 1
等 级:新手上路
帖 子:27
专家分:0
注 册:2006-4-1
收藏
得分:0 
Private Declare Function sndPlaySound Lib "winmm.dll" Alias "sndPlaySoundA" (ByVal lpszSoundName As String, ByVal uFlags As Long) As Long

  Const SND_SYNC = &&H0

  Const SND_ASYNC = &&H1

  Const SND_NODEFAULT = &&H2

  Const SND_MEMORY = &&H4

  Const SND_ALIAS = &&H10000

  Const SND_FILENAME = &&H20000

  Const SND_RESOURCE = &&H40004

  Const SND_ALIAS_ID = &&H110000

  Const SND_ALIAS_START = 0

  Const SND_LOOP = &&H8

  Const SND_NOSTOP = &&H10

  Const SND_VALID = &&H1F

  Const SND_NOWAIT = &&H2000

  Const SND_VALIDFLAGS = &&H17201F

  Const SND_RESERVED = &&HFF000000

  Const SND_TYPE_MASK = &&H170007

  Private Declare Function mciExecute Lib "winmm.dll" Alias "mciExecute" (ByVal lpstrCommand As String) As Long

  2、在窗中激活事件中加入以下代码:

  Private Sub Form_Activate()

  Dim ReturnValue As Long

  ReturnValue = sndPlaySound("C:windowsMEDIATADA.WAV",SND_SYNC)End Sub


那位高手能帮我解释一下这段代码吗?小弟我实在读不懂啊!

2006-04-17 02:40
快速回复:[求助]还有一个问题是给MDIForm1窗体添加背景音乐
数据加载中...
 
   



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

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