国产探花免费观看_亚洲丰满少妇自慰呻吟_97日韩有码在线_资源在线日韩欧美_一区二区精品毛片,辰东完美世界有声小说,欢乐颂第一季,yy玄幻小说排行榜完本

首頁 > 開發 > 綜合 > 正文

如何用VB程序來播放WAV文件

2024-07-21 02:20:31
字體:
來源:轉載
供稿:網友
注冊會員,創建你的web開發資料庫,wednesday, september 24 2003 1:24 pm 當一定事件完成時,程序發出特定的信號則可以增加程序的用戶界面特性,比如在下載完成或者選擇一個命令的時候。使用一個多媒體功能,通過一個vb程序來運行wav文件是一件輕而易舉的事情。然而,系統必須為這一操作而安裝一個聲卡。

  你所需要的api函數稱為playsound,以下為該函數的聲明:

  public declare function playsound lib "winmm.dll" _
  alias "playsounda" (byvallpszname as string, _
  byvalhmodule as long, byvaldwflags as long) _
  as long

  在這一函數中,第一個變量是名稱,包括運行的wave文件的路徑。第二個變量在運行文件時通常不使用,所以你可以將它賦值為zero。最后一個變量包含控制函數如何工作的標記。

  為了當前的需要,必須需要兩個標記。它們是:

  snd_async (value= 1):以異步方式運行,這意味著當播放聲音時函數在運行。
  snd_filename (value = &h20000):第一個變量為一個文件名。
  所以,以下代碼播放了dingdong.wav文件中的聲音:

  playsound "dingdong.wav", clng(0), _
  snd_async or snd_filename

  當運行在一個程序中運行音頻文件時,還有其他兩點值得注意。第一,你必須確保一個特定的音頻文件存在,否則會產生錯誤。這一過程可以用以下一個簡單的函數來完成:

  public function fileexists(fullfilename) as boolean

  ' passed a filename (with path) returns
  ' true if the file exists, false if not.

  dim s

  s = dir(fullfilename)
   
  if s = "" then
   fileexists = false
  else
  fileexists = true
  end if

  end function

第二,程序必須具有為用戶提供關閉聲音的選擇設置。這一過程可以通過使用一個比如gprogramsoundsenabled的全局布爾變量來實現。

  我的方法是在一個函數中同時處理這些需要,如下所示。(以下代碼假設音頻文件已經存放在程序文件中)

  private sub playsoundx(filename as string)

  ' if sound is enabled and filename exists,
  ' play the specified sound.

  filename = app.path & "/" & filename

  if fileexists(filename) and gprogramsoundsenabled then
   playsound filename, clng(0), snd_async or snd_filename
  end if

  end sub

  正確使用這些函數,程序就可以播放任何wave文件,如下所示:

  playsoundx "dingdong.wav"

  從vb程序播放音頻文件的其他方法包括窗體上的多媒體控制。當你不需要這些控制特性時,以上講述的技術已經足夠,并且很容易掌握。
發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
主站蜘蛛池模板: 枣庄市| 株洲县| 高要市| 萍乡市| 融水| 龙陵县| 察雅县| 东丽区| 龙川县| 正定县| 顺平县| 新乡县| 揭西县| 洞头县| 文成县| 定南县| 宝山区| 勃利县| 南投市| 岑溪市| 双辽市| 理塘县| 牙克石市| 安西县| 乡宁县| 漯河市| 崇阳县| 聂拉木县| 绥滨县| 东平县| 咸宁市| 台山市| 桂东县| 成武县| 平潭县| 怀仁县| 万源市| 集安市| 会昌县| 宁阳县| 德清县|