说三道四技术文摘-感悟人生的经典句子
说三道四 > 文档快照

播放声音文件 -VB资料

HTML文档下载 WORD文档下载 PDF文档下载
播放声音文件 -VB资料

-在 某 些 情 况 下, 例 如 程 序 员 正 在 编 写 一 个 游 戏, 或 是 将
要 进 行 一 项 非 常 冗 长 无 聊 的 过 程, 可 以 通 过 播 放 音 乐 来
增 加 游 戏 的 声 光 效 果 或 是 减 少 漫 长 的 等 待 所 带 来 的 困 倦。
本 文 介 绍 如 何 在Microsoft Visual Basic 中 对 声 音 文 件 进 行 播
放。

播 放 声 音 文 件

---- 在Microsoft Visual Basic 中 进 行 多 媒 体 音 乐 的 播 放 是 一 件
非 常 轻 松 的 事 情。 在Microsoft Windows 系 统 中 支 持 的 声 音 文 件
有WAV 文 件 和MIDI 文 件, 通 常 使 用Windows 应 用 程 序 编 程 接 口(
API) 函 数mciExecute 函 数 可 以 对MIDI 文 件 进 行 播 放。 而 使 用API
函 数sndPlaySound 则 可 以 对WAV 播 放 文 件 进 行 播 放, 当 然, 你 也
可 以 使 用mciExecute 函 数 来 播 放WAV 文 件。

---- 为 了 播 放WAV 文 件, 你 需 要 在 你 的 程 序 窗 体 的 通 用 声 明
部 分 中, 或 是 标 准 模 块 中 添 加 如 下 的 声 明 语 句:

---- Private Declare Function sndPlaySound Lib "winmm.dll" Alias "
sndPlaySoundA" (ByVal lpszSoundName As String, ByVal uFlags As Long) As
Long

---- 以 及 如 下 的 标 识 常 量:

---- Public Const SND_SYNC = &H0
---- Public Const SND_ASYNC = &H1
---- Public Const SND_NODEFAULT = &H2
---- Public Const SND_MEMORY = &H4
---- Public Const SND_ALIAS = &H10000
---- Public Const SND_FILENAME = &H20000
---- Public Const SND_RESOURCE = &H40004
---- Public Const SND_ALIAS_ID = &H110000
---- Public Const SND_ALIAS_START = 0
---- Public Const SND_LOOP = &H8
---- Public Const SND_NOSTOP = &H10
---- Public Const SND_VALID = &H1F
---- Public Const SND_NOWAIT = &H2000
---- Public Const SND_VALIDFLAGS = &H17201F
---- Public Const SND_RESERVED = &HFF000000
---- Public Const SND_TYPE_MASK = &H170007

---- sndPlaySound 函 数 需 要 两 个 参 数, 第 一 个 参 数soundfilename
是 要 播 放 的WAV 文 件 的 名 称。 第 二 个 参 数 是 一 个 表 明 播 放
方 式 的 标 识 常 量, 其 定 义 的 值 如 上 所 示, 通 常 所 使 用 的 标
识 意 义 如 下:

---- SND_SYNC 播 放WAV 文 件, 播 放 完 毕 后 将 控 制 转 移 回 你 的 应
用 程 序 中。
---- SND_ASYNC 播 放WAV 文 件, 然 后 将 控 制 立 即 转 移 回 你 的 应
用 程 序 中, 而 不 管 对WAV 文 件 的 播 放 是 否 结 束。
---- SND_NODEFAULT 不 要 播 放 缺 省 的WAV 文 件, 以 免 发 生 某 些 意
外 的 错 误。
---- SND_MEMORY 播 放 以 前 已 经 加 载 到 内 存 中 的WAV 文 件。
---- SND_LOOP 循 环 播 放WAV 文 件。
---- SND_NOSTOP 在 开 始 播 放 其 它 的WAV 文 件 之 前, 需 要 完 成 对
本WAV 文 件 的 播 放。

---- 注 意:SND_LOOP 标 识 通 常 需 要 同SND_ASYNC 共 同 使 用, 也 即
在 两 个 标 识 之 间 添 加 与 播 放 符, 以 免 在 对WAV 文 件 进 行 播
放 的 时 候 将 系 统 挂 起。

---- 为 了 播 放MIDI 文 件, 你 需 要 在 你 的 程 序 窗 体 的 通 用 声
明 部 分 中, 或 是 标 准 模 块 中 添 加 如 下 的 声 明 语 句:

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

---- mciExecute 函 数 只 需 要 一 个 参 数,CommandString, 顾 名 思 义,
它 是 一 个 命 令 字 符 串, 用 于 表 明 对 声 音 文 件 播 放 的 命 令,
例 如, 希 望 完 整 播 放 声 音 文 件, 则 该 字 符 串 就 是 字 符 串損
lay" 加 上 声 音 文 件 的 路 径 以 及 文 件 名 称, 如 下 所 示**

---- Dim ReturnValue As Long
---- ReturnSoundValue = mciExecute("play C:\WIN95\MEDIA\CANYON.MID")

---- 如 果 希 望 对 声 音 文 件 的 部 分 进 行 播 放, 可 以 使 用from...
to... 语 句 格 式, 例 如 若 要 播 放CANYON.MID 文 件 的10 毫 秒 到100
毫 秒 的 部 分, 可 以 使 用 如 下 的 语 句:

---- Dim ReturnValue As Long
---- ReturnSoundValue = mciExecute("play C:\WIN95\MEDIA\CANYON.MID from
10 to 100")
---- mciExecute 函 数 也 可 以 用 来 对WAV 文 件 进 行 播 放, 方 法 同
播 放MIDI 一 样。

样 例 程 序

---- 1. 在Visual Basic 中 开 始 一 个 新 的 项 目, 采 用 缺 省 的 方 法
建 立Form1。
---- 2. 将 如 下 的 声 明 语 句 添 加 到Form1 的 通 常 声 明 部 分 中(
注 意 每 个 声 明 语 句 需 要 被 书 写 在 一 行 内):

---- 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

---- 3. 在Form1 上 添 加 一 个 文 本 框 控 件, 采 用 缺 省 的 方 法 建
立Text1。 将 它 的Caption 属 性 设 置 为NULL。

---- 4. 在Form1 上 添 加 一 个 命 令 按 钮 控 件, 采 用 缺 省 的 方 法
建 立Command1。 将 它 的Caption 属 性 设 置 为" 使 用sndPlaySound 函 数
敗*

---- 5. 在Form1 上 添 加 一 个 命 令 按 钮 控 件, 采 用 缺 省 的 方 法
建 立Command2。 将 它 的Caption 属 性 设 置 为" 使 用mciExecute 函 数敗*

---- 6. 将 如 下 的 代 码 添 加 到Command1 的 单 击 事 件 中:


Private Sub Command1_Click()
Dim ReturnValue As Long
Text1.Text = " 使 用sndPlaySound 函 数 播 放TADA.WAV 文 件。"
ReturnValue = sndPlaySound("C:\WIN95\MEDIA\TADA.WAV", SND_SYNC)
End Sub


---- 7. 将 如 下 的 代 码 添 加 到Command2 的 单 击 事 件 中:


Private Sub Command2_Click()
Dim ReturnValue As Long
Text1.Text = " 使 用mciExecute 函 数 播 放Canyon.mid 文 件。"
ReturnSoundValue = mciExecute
("play C:\WIN95\MEDIA\CANYON.MID from 10 to 100")
End Sub


---- 通 过 按 下F5 键 来 执 行 样 例 程 序。 单 击" 使 用sndPlaySound 函
数" 命 令 按 钮 则 使 用sndPlaySound 函 数 来 播 放C:\WIN95\MEDIA 目 录
下 面 的TADA.WAV 声 音 文 件。 单 击" 使 用mciExecute 函 数" 则 使 用
mciExecute 函 数 来 播 放C:\WIN95\MEDIA 目 录 下 面 的CANYON.MID 文 件
的10 毫 秒 到100 毫 秒 的 部 分。


IBM 2014中国论坛:挖掘新互联网时代下“智慧企业”的发展之路 Facebook工程部副总裁Cory Ondrejka谈企业在早期所遇到的管理瓶颈 小团队管理工具选择:不需要大而全 《近匠》聚合CEO左磊:基础数据免费,API开放 IDC:HTML5与原生应用之争还将长存 不甘称臣,Google誓要击败Amazon 【OSTC讲师专访】腾讯追风(QcloudMna):开源移动加速SDK Google Go:一门为云而生的编程语言 3月26日:没有Larry Page,就没有今天的Google Hortonworks再获1亿美元融资,Hadoop领域三足鼎立 Intel收购Basis Science,欲拓展可穿戴设备市场 Facebook以20亿美元收购Oculus:虚拟现实将是未来计算平台又一大事件 基于NodeJS的14款Web框架 Hadoop导航:版本、生态圈及MapReduce模型 把黑匣子送上“云” 失联困境能否不再 看看全球十大电信巨头的大数据玩法 尹绪森:打开圈子拥抱变化,谈Spark玩家的自我修养 从Healthbook看苹果将如何颠覆移动医疗和健身追踪 Google可穿戴:详解Android Wear的十大功能 初创企业非技术人员的迷思 【OSTC讲师专访】王兴博:Genesis-3D,3D开源游戏引擎 Facebook发布开源项目Tweaks,让iOS应用开发更加便捷 移动开发创业团队再下一城!UCloud与飞流战略合作 【走进支付宝】即将开场,问题大征集! 开发者薪资调查:半数开发者工作十年方可迎来好“薪”情 沟通更畅快 HipChat推出1对1视频和屏幕共享功能 AMD宣布支持DirectX 12 为游戏开发者带来更多福利 开发者薪资调查:2013年哪种编程语言最赚钱? 苹果挖墙脚未果,黑莓高管跳槽被起诉 不看不知道:六个超大规模Hadoop部署案例 豌豆荚发布应用内搜索技术协议 兼容App Indexing 大家帮忙!! 什么时候用DataGrid,什么时候用DataList? 怎么样从数据库里取得某字段的值??? 昆腾的硬盘修理找谁啊?急,UP有分........ www.webmatrixhosting.net免费空间中FTP文件上传问题 Apache 2.0.43 +Tomcat 4.1.24+mod_jk2-2.0.43.dll整合问题出现:The servlet container is temporary unavailable or being upgraded 我装的Delphi7好像丢了一个文件:Proxies.pas,哪位好心人给我一个? 人,真脆弱! 开水房追女之呕心沥血计划 (超暴笑) 孤独 急!!Image对象如何设置成为透明的???Thanks! 【憋的慌】大头、阳光呢!!! 关于FLASHMX的遮罩问题 一个问题,想不通! 【憋的慌】死水、一辉呢!!! 急!!!急!!!怎么在建表时使用一个时间函数??就是指出加这条这条文件的时间?? 【憋的慌】蓝心、风呢!!! 怎么获得一个应用程序的图标,比如我用进程ID,获得其主模块,然后怎么办! 【憋的慌】冰冰、贝贝呢!!! 我获得一个服务,可以检验综的状态什么的,可我想获得除了这个以后的东西比如:.... 【憋的慌】珊珊艾、CoolSlob呢!!! 关于adodc控件删除的求救 【憋的慌】冰儿、江风呢!!! 关于Apache wuxuan、kingzai、jemmylau各位版主,请问怎样才能得更多的可用分?我看有些人有几千分,真不解。 提示问题!菜鸟问题马上送分 请问哪有php安装程序下载? [散分]探望qxjavajava 使用gdiplus.lib出现下面的错误? 讨论MVC--Model这块的实现方法(不用EJB的情况)??还有那里有可以自动生成DAO和VO的比较不错的工具吗? 关于网络传销 关于个人bean的问题!!!! windows 2003 server 下为什么不能装sql的任何版本 挑战性问题:ToolBar为何在客户区?而MainFrameWnd的在非客户区?(高分) 一个奇怪的问题 再搞不定我要自杀啦。。。。。。。 求助!测试数据库的师傅来看一下啊(adodc 对象编程) 请问,图书怎样分类,分哪些类比较科学? 推荐几个比较好的C++的论坛吧 谁能帮我一下! 请大家帮助 给50分!!!!!!! 为水源200多位水友鸣不平,鄙视某人。。。 请教各位高手(菜鸟) 怎样把我的dll加到0x80000000以上地址? 200分谁知道,CRecordSet怎么样管理两个表 如何互相调用文件????????? 关于vc的sourcesafer的一个问题 带有滚动条的子窗口是出现但是没有用,各位高手请帮帮忙?我等着 请问,哪个系统比较好啊??? 来CSDN一年,最后半年都只在水园逛,几乎不来答题为什么我会这么无聊?谁能救救我 【憋的慌】小网虫呢!!! 替米考星,替米考星厂家,替米考星价格?以及应用? 以人为本 什么短语 这是个什么姓氏【razzaq】是个中东地区的姓氏么?我一个新认识的朋友的姓氏,他是英国人.我只是想了解些,我觉得这不像常规的英文姓氏. 谁对兽药原料—甲磺酸加替沙星比较了解?帮忙介绍一下,谢谢! “人命关天”这个词 体现了以人为本吗 白云石粉主要化学成分是什么? 氨苄西林钠原料药,兽用级,生物快车兽药原料直销处的产品怎么样? 以人为本,这个词有没有国外习惯性的翻译? 哲学对我到底有什么好处 我最喜欢的动物是袋鼠【两种】英译汉 生活中你有什么发现?快. 谁有人生忠告写点来呢? 兽药招商怎么做 幼蛇如何过冬?急要精心篇的. It was my birthday,but when I got up,on one was h______,and mum and dad hadn't left me a note此处填什么?急,home可以吗 candy的英语文章 我做实验缺昆虫在哪里可以买的到 是鳞翅目夜蛾科的 斜纹夜蛾 求大神 取物初华,成语:取()初(),该怎么填啊? 用50N的水平向右的力把质量为3千克的木块压在竖直墙上,这时木块正顺着墙壁面竖直向下匀速运动………请给出比较明白的解析,尽快,用50N的水平向右的力把质量为3千克的木块压在竖直墙上, I ( ) usethe chopsticks.But I'd like ( ).怎么填 翻译It was not only a great honour for beijing but also historical achievement for the whole nation The Dragon Boat Festivai是什么意思?我急,能不能快点! some people don't like lettuce ( ) hamburgers为什么括号中试in而不是with 初一数学题:A.B两地相距480千米,一列慢车从A地出发每小时行60千米.一列快车从B站开出,每小时行100千米A.B两地相距480千米,一列慢车从A地出发每小时行60千米.一列快车从B站开出,每小时行100 元稹 闻乐天左降江州司马 小松鼠采了一些蘑菇,它们的含水量为99%,稍经晾晒,质量减轻了5千克,因此含水量下降到98%,晾晒后蘑菇重多少千克? Kate and I is/am/are going to the park tomorrowbe动词用什么? -What's the date today?-It's June 16.-Already?Then it's Dragon Boat Festival today.Already意思 一家松鼠,采了一篮蘑菇,小松鼠采了比4分之1多15个比3分之1少4个,小松鼠采了几个? 超声波在铜导线中能传多远? 什么叫放鸽子?假如说你约了她,却因为有事情打了电话给他,跟他说,他又同意了叫放鸽子吗?(他还没出门) 世界上主要哪些国家和地区的人们信奉伊斯兰教 给直翅目,等翅目,半翅目,同翅目,鞘翅目,鳞翅目,膜翅目写一个双项式检索表 “放鸽子”是什么意思啊? “阿拉伯人的世界”在哪里 borrow photo of the fashion show 中文 仿照 山中访友 中的拟人句描写山中的一个景物 现在世界信奉伊斯兰教的人约有多少? the fashion show is well w__ seeing 填什么? “放鸽子”是指啥意思? (三字经)中与不耻下问有关联的是哪句话 I think the fashion show is good 否定句 怎样锻炼自己成为有恒心有毅力的人怎么都是方框啊 一群孩子在乘坐旋转木马,奇奇在旋转木马上玩的很高兴,他提出下面的问题:“如果把我前面的小朋友的个数的三分之一加上在我后面的小朋友的个数的四分之三正好是乘坐旋转木马小朋友 英语翻译Connections between local charitable efforts and amazing ways to impact change.这是完整的一句话 他是个很有毅力的人 英语怎么说 为什么坐在旋转木马上的小孩处于加速状态 和()可() ()不()席 ()高()重 成语快 1 怎样成为一个有恒心、有毅力的人?怎样做,才能改变自己的懒散? a slice of tomato(es)中tomato有没有复数形式 我有一个全波整流电路输出电压是127伏 电磁阀线圈电阻是530欧我算的电流是0.22安功率约28瓦 求详细回答,如何才能成为一个有毅力有恒心的人? 求以“以人为本”为话题的600字作文今天下午就要,好的话,再加50分 I usually do my homework and sometime help Mum (w ) housework. How does your friends go to school?中哪里错误 I would like to buy a kilo of biscuits.(用a kilo of biscuits提问)_______ would you like to ______? Mum and I 和 I and Mum 哪个写法是对的 从3件外观相同的物品中找1件物品(质量比其它两件轻),至少要用天平秤几次才能找出来? “以人为本”这个词出自哪里? Before bedtime,my mum usually watches TV,my dad usually__and__,but he never__.填空 朝鲜将派小球员赴欧留学德媒称奥巴马知晓“监听门”格鲁吉亚选总统最高法强调依法办案 排除权力金钱人情河北冀宝斋博物馆馆长王宗泉去世 馆方俄称愿与北约就导弹防御系统进行建设性美4囚犯上演浴室版“越狱” 2人被缉美方称机密情报泄露未对美外交政策造成美方称机密情报泄露未对美外交政策造成北京首发蓝色预警 35监测站点全部重南京财政局长被问收入:没够单独申报个北京首发空气重污染蓝色预警 29日空索马里“伊斯兰青年运动”高级指挥官被参议员贪污风波袭扰加拿大 哈珀政府骑霍英东家族争产风波再掀波澜 大哥三弟英首相:媒体爆料美监听丑闻是“资敌”平等对话才能改善美伊关系华人血腥灭门案惊扰纽约 落魄凶手因嫉“金发女孩”父母否认卖女儿 因没钱放上海自贸区制度框架成型 将迎新一轮政消保法修订多维度保障权益 监管与惩罚男性养生:男人养生离不开的9大日常食男性养生:男人健康滑坡的十信号(组图两性养生推荐:夫妻最爱的悦性食物排行关于知识产权司法保护典型案例新闻发布我国东北内蒙古等地出现大雾天气 长春广州一制衣厂女工遭保安强暴 立案两月李克强:没有什么利益能超过人民的利益台大统油品被爆卖黑心油 董事长遭检方吴伯雄将率团赴两岸经贸文化论坛 马英台湾地区9月失业率4.24% 居“四李娜:2013是生涯最好赛季 更优秀广西南宁一小学生掉入校内污水井(图)川大教授西博会上宣称:新技术能彻底解四川计划实施2336个重大项目总投资五年多来立案侦查贪污贿赂犯罪案件15今日海外关键词(10月22日):三国前三季度自治区国民经济生产总值增速创国务院批复原则同意《全国高标准农田建李娜:2013是生涯最好赛季 更优秀跨省轨交实现同城 花桥楼市全线拉涨美国两岁女儿玩手枪将自己打死19岁父
备案号:鲁ICP备13029499号-2 说三道四 www.s3d4.cn 说三道四技术文摘