⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 如何播放资源文件中的声音.txt

📁 VB技巧问答10000例 VB技巧问答10000例
💻 TXT
字号:
假 设 资 源 文 件 是 这 样 的 : 
     CHIMES WAVE DISCARDABLE "Chimes.wav" 
     DING WAVE DISCARDABLE "Ding.wav" 
    1、 建 立 一 个 新 工 程 ; 
    2、 添 加 下 面 代 码 到 Form1 
     '************************************************** 
     ' Form1.frm - 调 用 PlayWaveRes播 放 声 音 资 源 文 件 
     '************************************************** 
     Sub Command1_Click() 
     PlayWaveRes "Chimes" 
     PlayWaveRes "Ding" 
     End Sub 
    3、 添 加 你 的 资 源 文 件 到 工 程 。 
    4、 建 立 一 个 新 模 块 , 输 入 以 下 代 码 : 
     '************************************************** 
     
     ' Baswave.bas - 使 用 LoadResData播 放 声 音 文 件 
     '************************************************** 
     
     Option Explicit 
     Private Declare Function sndPlaySound Lib "winmm" Alias _ 
     "sndPlaySoundA" (lpszSoundName As Any, ByVal uFlags As Long) _ 
     As Long 
     
     '************************************************** 
     ' wFlags 参 数 
     '************************************************** 
     
     Public Const SND_SYNC = &H0 ' Play synchronously (default). 
     'Public Const SND_ASYNC = &H1 ' Play asynchronously (see 
     ' note below). 
     Public Const SND_NODEFAULT = &H2 ' Do not use default sound. 
     Public Const SND_MEMORY = &H4 ' lpszSoundName points to a 
     ' memory file. 
     Public Const SND_LOOP = &H8 ' Loop the sound until next 
     ' sndPlaySound. 
     Public Const SND_NOSTOP = &H10 ' Do not stop any currently 
     ' playing sound. 
     
     '************************************************** 
     ' 播 放 资 源 文 件 中 的 声 音 
     '************************************************** 
     
     Public Sub PlayWaveRes(vntResourceID As Variant, Optional vntFlags) 
     '---------------------------------------------------------- 
     ' 注 意 : 如 果 使 用 SND_ASYNC, 你 必 须 将 下 面 的 
     ' bytSound()数 组 放 在 模 块 级 变 量 定 义 的 地 方 
     ' 或 定 义 为 静 态 变 量 , 否 则 可 能 导 致 GPF 
     '------------------------------------------------- 
     Dim bytSound() As Byte ' Always store binary data in byte arrays! 
     
     bytSound = LoadResData(vntResourceID, "WAVE") 
     
     If IsMissing(vntFlags) Then 
     vntFlags = SND_NODEFAULT Or SND_SYNC Or SND_MEMORY 
     End If 
     
     If (vntFlags And SND_MEMORY) = 0 Then 
     vntFlags = vntFlags Or SND_MEMORY 
     End If 
     
     sndPlaySound bytSound(0), vntFlags 
     End Sub 
<END>    

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -