Private Declare Function SendMessage Lib "
user32.dll" Alias "SendMessageA" (ByVal hwnd As
Long, ByVal wMsg As Long, ByVal wParam As Long,
ByVal lParam As Long) As Long
SendMessage()函数的参数说明:
Hwnd:为一个长整型表达式,其值用来表示要接缺唤拦收消息的那个窗口的句柄。
wMsg:为一个长整型表达式,其值表示消息的标识符。
wParam:为一个长整型表达式,其值表示具体取决于消息。
lParam:为一个长整型表达式,其值表示具体取决于消息。
要实现控制声卡音量大小,其 *** 作步骤如下:
(1)新建一个工程,工程名为"控制声卡"。在窗体上添加3个Command控件,Command1的Caption属性为"音量++"、Command2的Caption属性为"音量- -"、Command3的Caption属性为"静音"。
(2)双击窗体,在打开的代码窗体中输入以下代码:
'声明API
Private Declare Function SendMessage Lib "user32.
dll" Alias "SendMessageA" (ByVal hwnd As Long,
ByVal wMsg As Long, ByVal wParam As Long, ByVal
lParam As Long) As Long
Private Const WM_APPCOMMAND As Long = &H319 '定义API
函数所用到的常量
Private Const APPCOMMAND_VOLUME_UP As Long = 10
Private Const APPCOMMAND_VOLUME_DOWN As Long =9
Private Const APPCOMMAND_VOLUME_MUTE As Long = 8
Private Sub Command1_Click()'音量++按钮
'调用SendMessage()
函数来实现声卡上的音量增加
SendMessage Me.hwnd, WM_APPCOMMAND, &H30292,
APPCOMMAND_VOLUME_UP *&H10000
End Sub
Private Sub Command2_Click()'音量-按钮
'调用SendMessage()
函数来实现声卡上的音量减少
SendMessage Me.hwnd, WM_APPCOMMAND, &H30292,
APPCOMMAND_VOLUME_DOWN * &H10000
End Sub
Private Sub Command3_Click()'静音按钮
'调用
SendMessage()函数来实现声卡伏胡静音
SendMessage Me.hwnd, WM_APPCOMMAND, &H200EB0,
APPCOMMAND_VOLUME_MUTE * &H10000
End Sub
运行程序,在窗体上单击"音量++"按钮可实现声卡的音量增加、"音量- -"按钮可实现声卡的音量减少、"静音"按钮可实现声卡的静音。可将本示例应用到本章中的其他示例中,以实现对声卡的音量进行控制链尘。
通过本小节中的一些示例可发现,通过使用API函数能方便地对计算机中一些系统设置,使用API函数能够实现VB本身不能实现的功能
这个API只能播放wav格式的音频文件!MP3不行
第三那个参数常量含义,至于这些常量转换成数值是多少,可以用ET助手,按F12,输入#就会有语法提示!鼠标移过去可以看到数值
SND_APPLICATION
用应用程序指定的关联来播放声音。
SND_ALIAS
pszSound参数指定了注册表或WIN.INI中的系统事件的别名。
SND_ALIAS_ID
pszSound参数指定了预定义的声音标识符。
SND_ASYNC
用异步方式播放声音,PlaySound函数在开始播放后立即返回。
SND_FILENAME
pszSound参数指定了WAVE文件名。
SND_LOOP
重复播放声音,必须与SND_ASYNC标志一块使用。
SND_MEMORY
播放载入到内存中的声音,此时pszSound是指向声音数据的指针。
SND_NODEFAULT
不播放缺省声音,若无此标志,则PlaySound在没找到声音时会播放缺省声音。
SND_NOSTOP
PlaySound不打断原来的声音播出并立即返回FALSE。
SND_NOWAIT
如果驱动程序正忙则函数就不播放声音并立郑喊键即返回。
SND_PURGE
停止所有与调用任务有关的声音。若参数pszSound为NULL,就停止所有的声音,否则,停止pszSound指定的声音。
SND_RESOURCE
pszSound参数是WAVE资源的标识符,这时要用到hmod参数。
SND_SYNC
同步喊巧播放声音,在播放完后PlaySound函数才返回。
SND_SYSTEM
如果是背景窗口,
如果这个标志被设置,声音是分配到音频会议系统通知的声音。系统音渗纳量控制程序(sndvol)显示音量滑块控制系统通知的声音。设置该标志将下控制音量滑块。如果没有设置该标志,声音是分配到默认的音频会议的应用进程。更多信息,请参阅文档的核心音频API的软件开发工具包
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)