授課ANT日期2011516_第1頁(yè)
授課ANT日期2011516_第2頁(yè)
授課ANT日期2011516_第3頁(yè)
授課ANT日期2011516_第4頁(yè)
授課ANT日期2011516_第5頁(yè)
已閱讀5頁(yè),還剩17頁(yè)未讀 繼續(xù)免費(fèi)閱讀

付費(fèi)下載

下載本文檔

版權(quán)說(shuō)明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)

文檔簡(jiǎn)介

1、授課:ANT 日期:2011/5/16授課內(nèi)容BEEP播放音樂(lè) use System播放音樂(lè) use PlaySound簡(jiǎn)易使用windows.hMessageBoxAbout BEEP最簡(jiǎn)單的警示音,利用ASCII裡的基本設(shè)定。#include #include #include int main() printf(%c,7);Sleep(1000); printf(%c, a ); return 0 ;BEEP函式C除了可利用 printf(“%c”, a );產(chǎn)生 beep單純一聲外,尚可利用 Beep 指令來(lái)完成單音的曲子、音階。運(yùn)用windows.h裡的函式Beep(int dwFr

2、eq, int dwDuration);第一個(gè)參數(shù)dwFreq為音階頻率第二個(gè)參數(shù)dwDuration為延遲時(shí)間可依個(gè)人需求自訂延遲時(shí)間來(lái)分別判斷一拍及半拍. ex : 600 為一拍 = 300 便是半拍.小範(fàn)例 ex10-1-1這是一個(gè)利用蜂鳴器發(fā)出簡(jiǎn)易音階的小範(fàn)例。切記:請(qǐng)?jiān)跓o(wú)人時(shí)實(shí)作,因?yàn)檎娴暮艹?。小蜜蜂?fàn)例 ex10-1-2 #include#includeint main()int row,col;int voice164=700,600,600,0,650,550,550,0,500,550,600,650,700,700,700,0,700,600,600,0,650,550,

3、550,0,500,650,700,700,600,0,0,0,550,550,550,550,550,600,650,0,600,600,600,600,600,650,700,0,700,600,600,0,650,550,550,0,500,600,700,700,500,0,0,0 ;int tempo164=1,1,2,0,1,1,2,0,1,1,1,1,1,1,2,0,1,1,2,0,1,1,2,0,1,1,1,1,4,0,0,0,1,1,1,1,1,1,2,0,1,1,1,1,1,1,2,0,1,1,2,0,1,1,2,0,1,1,1,1,4,0,0,0;for(row=0; r

4、ow16; row+) for(col=0; col “Compiler and debugger settings” - 左欄“Global compiler settings” - “Linker settings”按add並將此lib檔加入。使用PlaySound的事前準(zhǔn)備(續(xù))做完這動(dòng)作後,還必須在程式中加入#pragma comment(lib,“winmm.lib”)#include #include 注意include時(shí),window.h要放在mmsystem.h之上不然會(huì)有錯(cuò)誤產(chǎn)生。但是此函式目前只能播放.wav格式的聲音檔PlaySound此函式的第三個(gè)參數(shù)為播放標(biāo)誌,可有下

5、列的選擇:SND_FILENAME pszSound參數(shù)指定了WAVE檔名SND_SYNC 做同步播放,在播放完後才返回SND_ASYNC 做非同步播放,函數(shù)在開(kāi)始播放後立即返回SND_LOOP 重複播放聲音,但必須與SND_ASYNC同時(shí)使用SND_NODEFAULT 不播放如果沒(méi)有聲音的音效,如果沒(méi)使用則當(dāng)發(fā)現(xiàn) 沒(méi)有聲音可撥放時(shí)會(huì)撥放音效。SND_PURGE 停止所有與調(diào)用任務(wù)有關(guān)的聲音。若參數(shù)pszSound 為NULL,就停止所有的聲音,否則停止 pszSound 指定的聲音。詳情參考 http:/.tw/43298441_d.html第三個(gè)參數(shù)在使用時(shí)可以使用” | ”組合函式的功能

6、。如SND_FILENAME | SND_ASYNC 表示指定了第一個(gè)參數(shù)為播放的檔案且做非同步播放。範(fàn)例 ex10-2注意音樂(lè)檔名在輸入時(shí),請(qǐng)記得要輸入完整的位址另外參數(shù)中的路徑使用兩個(gè)連續(xù)的反斜杠轉(zhuǎn)義代表一個(gè)反斜杠。簡(jiǎn)易windows.h使用 - MessageBox我們?yōu)榱艘尦淌娇雌饋?lái)有點(diǎn)變化,可用messagebox產(chǎn)生一個(gè)對(duì)話方塊。當(dāng)然,它會(huì)有自己的標(biāo)題、 文字訊息及按鍵鈕等。使用很簡(jiǎn)單,如下#includeint main() MessageBox(NULL , “Hello World” , “ ,MB_OK|MB_ICONASTERISK); return 0 ;Messag

7、eBox格式如下:int MessageBox(HWND hWnd , LPCTSTR lpText , LPCTSTR lpCaption , UNIT uType)四個(gè)參數(shù)分別是:1) HWnd :父窗口的控制碼。2) LpText :想要顯示的文字字串的指標(biāo)。3) LpCaption :對(duì)話方塊標(biāo)題字串的指標(biāo)。4) UType :顯示在對(duì)話方塊上的小圖示的類(lèi)型。詳細(xì)資料參考 http:/ 的圖示。關(guān)於return值,如果messagebox有Cancel按鍵(ex. MB_OKCANCEL,表示式窗上有OK與Cancel按鍵),則按下它的回傳值會(huì)是IDCANCEL,另外如果是按鍵盤(pán)上的E

8、sc鍵也會(huì)回傳IDCANCEL。按鍵類(lèi)型與圖示類(lèi)型請(qǐng)參考上頁(yè)連結(jié)。範(fàn)例 ex10-3利用messagebox的回傳值,在主程式執(zhí)行下一步的動(dòng)作。對(duì)應(yīng)到按取消鍵,則回傳IDCANCEL,而重試則是IDRETRY。 複習(xí)kbhitKbhit()的使用在於判斷是否有按按鍵。從系統(tǒng)來(lái)看就是說(shuō),此函式在於判斷暫存器buffer,是否有資料。當(dāng)我們按鍵盤(pán)按鍵時(shí),電腦會(huì)將按鍵字元存於keyboard buffer內(nèi),而kbhit如果判斷buffer內(nèi)有資料則回傳非 0的值,無(wú)資料則回傳 0 。注意:當(dāng)使用kbhit()後,並未使用getch()函式的話,buffer內(nèi)的資料會(huì)一直存在,再下一次按按鍵時(shí)會(huì)繼續(xù)

9、儲(chǔ)存,直到buffer滿為止,因此往後的kbhit()持續(xù)回傳 1 。複習(xí)kbhit(續(xù))因此從下面程式就可以知道瞭解問(wèn)題。Lab 10用Beep製作一個(gè)電子琴 按下鍵盤(pán)上的ASDFGHJ便會(huì)發(fā)出對(duì)應(yīng)的聲音 A-DoS-ReD-MiF-FaG-SoH-LaJ-SiHW 10簡(jiǎn)易wav播放器透過(guò)本程式可讓使用者簡(jiǎn)易的播放與更換背景音樂(lè),本程式共有三種音樂(lè)讓使用者自行選擇。 流程 使用者一開(kāi)始(1)試聽(tīng) (2)離開(kāi)在選擇試聽(tīng)後, 出現(xiàn)現(xiàn)有的歌單, 並選擇。 在選擇某一音樂(lè)後,使用者有兩種選項(xiàng)(a)試聽(tīng)秒數(shù) (b)任意, 在(a)中給予試聽(tīng)的秒數(shù),在(b)中則提供歌曲播放不中斷直到按到鍵盤(pán)任一按鍵為止。當(dāng)歌曲非意外性停止或中斷, 也就是秒數(shù)到了或者選(b)的人按了鍵盤(pán)則回到最初選擇(1)試聽(tīng) (2)離開(kāi) HW 10解釋首先創(chuàng)建一txt文件檔,內(nèi)含歌曲名稱(chēng),為求方便,歌曲名由助教定義,避免作業(yè)繳交時(shí)上傳檔案過(guò)大,作業(yè)上傳時(shí)不需要上傳音樂(lè)檔。同時(shí)歌曲一律放在C槽底下,其相對(duì)應(yīng)的位址將會(huì)是 C:b

溫馨提示

  • 1. 本站所有資源如無(wú)特殊說(shuō)明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁(yè)內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒(méi)有圖紙預(yù)覽就沒(méi)有圖紙。
  • 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫(kù)網(wǎng)僅提供信息存儲(chǔ)空間,僅對(duì)用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對(duì)任何下載內(nèi)容負(fù)責(zé)。
  • 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請(qǐng)與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對(duì)自己和他人造成任何形式的傷害或損失。

最新文檔

評(píng)論

0/150

提交評(píng)論