講解VB.NET程序制作一個提醒程序
在向大家詳細介紹VB.NET程序制作一個鬧鐘提醒程序之前,首先讓大家了解下提醒程序,然后全面介紹制作步驟。
一個提醒程序,最典型的就是鬧鐘程序。網(wǎng)上有不少個性化的提醒程序下載,但是大部分都是以時間為主的鬧鐘提醒。我們也可以用VB.NET程序來打造一個適合自己的提醒程序,比如監(jiān)控一個某個應(yīng)用程序的變化然后發(fā)出聲音提醒自己等等。一個提醒程序,最重要能在符合提醒條件的時候發(fā)出聲音來提醒使用者,在這里,我們就對具體的提醒條件啰嗦了,只針對如何實現(xiàn)提醒聲音的播放進行說明。
在VB.NET的.NET組件中,并沒有提供播放聲音文件的組件,但是我們可以通過使用Com組件來播放聲音文件。但是,要注意的事,我們只需要發(fā)出提示的聲音而已,并不需要像播放器那樣播放不同格式的聲音文件和繁多的列表,所以我們可以通過API函數(shù)來循環(huán)播放單個的聲音文件。
在WindowsAPI函數(shù)的有一個PlaySound函數(shù),它用于播放WAV格式的聲音文件,我們可以用它來反復(fù)播放一個指定的WAV文件來實現(xiàn)提醒功能。
首先在VB.NET程序中引入API聲明
- Public Declare Function PlaySound Lib "winmm.dll" (ByVal lpszSoundName As String,
ByVal hModule As Integer, ByVal dwFlags As Integer) As Integer
然后定義幾個我們程序中必須用到的dwFlags參數(shù)常量
同步調(diào)用PlaySound中指定的文件,播放完WAV文件后才返回結(jié)果
- Const SND_SYNC As Integer = &H0
異步調(diào)用PlaySound中指定的文件,不必等到播放完WAV文件后就直接返回結(jié)果,在這里我們可以調(diào)用異步方法來播放文件
- Const SND_ASYNC As Integer = &H1
反復(fù)播放指定的WAV文件
- Const SND_LOOP As Integer = &H8
在調(diào)用的時候hModule參數(shù)必須為0
需要停止的時候通過調(diào)用PlaySound(vbNullString, 0, 0)來實現(xiàn)現(xiàn)在我們在窗體上放置兩個按鈕,一個用于開始播放,一個用于停止播放,然后再放置一個TextBox控件,用于指定WAV文件的路徑.
完整代碼如下:
- Public Declare Function PlaySound Lib "winmm.dll" (ByVal lpszSoundName As String,
ByVal hModule As Integer, ByVal dwFlags As Integer) As Integer- Const SND_FILENAME As Integer = &H20000
- Const SND_ALIAS As Integer = &H10000
- Const SND_SYNC As Integer = &H0
- Const SND_ASYNC As Integer = &H1
- Const SND_LOOP As Integer = &H8
- Private Sub Button1_Click(ByVal sender As System.Object,
ByVal e As System.EventArgs) Handles Button1.Click- PlaySound(TextBox1.Text, 0, SND_LOOP Or SND_ASYNC)
- End Sub
- Private Sub Button2_Click(ByVal sender As System.Object,
ByVal e As System.EventArgs) Handles Button2.Click- PlaySound(vbNullString, 0, 0)
- End Sub
運行,在TextBox1中輸入有效的WAV文件的路徑,然后單擊開始,就可以循環(huán)播放聲音了,單擊停止按鈕就可以停止播放。
當(dāng)然,本文只是講述VB.NET程序制作一個鬧鐘提醒程序的關(guān)鍵部分的實現(xiàn),要完成一個真正的提醒程序,我們可以根據(jù)自己的需要,添加合適的提醒觸發(fā)條件,就可以做出一個真正個性化的鬧鐘提醒程序了。
【編輯推薦】