如何让VB的按钮播放自己指定的声音.不用播放器控键
3个回答
展开全部
那就用API三.
---- 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_NOWA99v = &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 毫 秒 的 部 分。
---- 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_NOWA99v = &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 毫 秒 的 部 分。
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询