不明白你為什么要二進制讀取聲音文件,VB可以直接調(diào)用API播放聲音文件,不需要你二進制來讀取聲音文件的。
昂仁網(wǎng)站建設公司創(chuàng)新互聯(lián),昂仁網(wǎng)站設計制作,有大型網(wǎng)站制作公司豐富經(jīng)驗。已為昂仁1000+提供企業(yè)網(wǎng)站建設服務。企業(yè)網(wǎng)站搭建\成都外貿(mào)網(wǎng)站制作要多少錢,請找那個售后服務好的昂仁做網(wǎng)站的公司定做!
Private
Declare Function sndPlaySound Lib "winmm.dll" Alias "sndPlaySoundA"
(ByVal lpszSoundName As String, ByVal uFlags As Long) As Long
Private Declare Sub Sleep Lib "kernel32" (ByVal dwMilliseconds As Long)
Sub PlayWavFile(strFileName As String, PlayCount As Long, JianGe As Long)
'strFileName 要播放的文件名(帶路徑)
'playCount 播放的次數(shù)
'JianGe 多次播放時,每次的時間間隔
If Len(Dir(strFileName)) = 0 Then Exit Sub
If PlayCount = 0 Then Exit Sub
If JianGe 1000 Then JianGe = 1000
DoEvents
sndPlaySound strFileName, 16 + 1
Sleep JianGe
Call PlayWavFile(strFileName, PlayCount - 1, JianGe)
End Sub
Private Sub Form_Click()
PlayWavFile "C:\aaa.wav", 1, 1000 '參數(shù):播放文件,播放次數(shù),播放間隔
End Sub
在.NET里,沒有托管的音樂播放器,用API只能播放WAV格式,對于MP3等形式的音頻文件,就要依賴于其他控件了,常用的就是
MediaPlayer。使用方法:
在工具箱上點右鍵,選擇“選擇項目(Choose Items)”,切到COM選項卡,找到 Windows Media Player, 勾選,確定
在t工具箱上,把剛才加入的MediaPlayer控件,拖放到窗體上
代碼:
WindowsMediaPlayer1.URL = "mp3文件路徑,支持網(wǎng)絡路徑"
WindowsMediaPlayer1.Ctlcontrols.play
基本就OK了,至于其他的操作諸如下一曲上一曲暫停停止,直接看 WindowsMediaPlayer1.Ctlcontrols. 里面的方法吧。
My.Computer.Audio.Play("SoundFile.wav")
SoundFile.wav是你要播放的聲音文件的路徑
方法一:調(diào)用系統(tǒng)DLL(這個有點不完善,也就是播放聲音時窗體無法控制,效果相當于Enabled=true,但音頻播放完畢后就沒事了)
Private?Declare?Function?sndPlaySound?Lib?"Winmm.dll"?Alias?"sndPlaySoundA"?(ByVal?lpszSoundName?As?String,?ByVal?uFlags?As?Long)?As?Long
Private?Sub?Button1_Click(ByVal?sender?As?System.Object,?ByVal?e?As?System.EventArgs)?Handles?Button1.Click
Dim?SoundFile?As?String,?Result?As?Long
SoundFile?=?"D:\KuGou\Pianoboy?-?第105天.wav"?'此處為路徑
Result?=?sndPlaySound(SoundFile,?0)
End?Sub
方法二:使用WindowsMediaPlayer(WindowsMediaPlayer1的可見為False)
先添加一個windowsmediaplayer控件(工具箱里沒有,需要手動添加)
Private?Sub?Button1_Click(ByVal?sender?As?System.Object,?ByVal?e?As?System.EventArgs)?Handles?Button1.Click
WindowsMediaPlayer1.visible=False
Me.WindowsMediaPlayer1.URL?=?"D:\KuGou\Pianoboy?-?第105天.mp3"
End?Sub
上面的都是點擊button1(按鈕1)后播放聲音,若是鼠標移動到某控件上發(fā)出聲音的話改一下觸發(fā)事件就OK了。
代碼是沒有錯的,但是其中關鍵是聲音文件資源定義字串必須使用根命名空間,不能用程序集名稱;還有就是聲音文件必須選屬性為嵌入資源。
My.Computer.Audio.Play(My.Resources.xxxmusic1xxx, AudioPlayMode.Background)
當前文章:vbnet播放聲音 vbnet播放聲音文件
地址分享:http://muchs.cn/article2/dossjic.html
成都網(wǎng)站建設公司_創(chuàng)新互聯(lián),為您提供關鍵詞優(yōu)化、面包屑導航、小程序開發(fā)、網(wǎng)站設計公司、網(wǎng)站導航、標簽優(yōu)化
聲明:本網(wǎng)站發(fā)布的內(nèi)容(圖片、視頻和文字)以用戶投稿、用戶轉(zhuǎn)載內(nèi)容為主,如果涉及侵權請盡快告知,我們將會在第一時間刪除。文章觀點不代表本網(wǎng)站立場,如需處理請聯(lián)系客服。電話:028-86922220;郵箱:631063699@qq.com。內(nèi)容未經(jīng)允許不得轉(zhuǎn)載,或轉(zhuǎn)載時需注明來源: 創(chuàng)新互聯(lián)