




版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進(jìn)行舉報或認(rèn)領(lǐng)
文檔簡介
第8章MFC編程編制消息處理函數(shù)消息映射一般消息傳遞過程利用ClassWizard編制消息處理函數(shù)舉例<<消息映射當(dāng)用戶在窗口中按下鼠標(biāo)左鍵時,Windows系統(tǒng)自動發(fā)送WM_LBUTTONDWON消息給窗口程序包含消息處理函數(shù)消息映射voidCMyView::OnLButtonDown(UINTnFlags,CPointpoint){ //TODO:Addyourmessagehandlercodehereand/orcalldefault CView::OnLButtonDown(nFlags,point);}消息映射在類頭文件中包含相應(yīng)的函數(shù)說明:afx_msgvoidOnLButtonDown(UINTnFlags,CPointpoint);消息映射在代碼文件中需要消息映射宏,將OnLButtonDown函數(shù)與應(yīng)用程序框架聯(lián)系起來消息映射BEGIN_MESSAGE_MAP(CMyView,CView) //{{AFX_MSG_MAP(CMyView) ON_WM_LBUTTONDOWN() //}}AFX_MSG_MAP //Standardprintingcommands
…END_MESSAGE_MAP()消息映射在類頭文件中還要包含以上,保證了程序框架為響應(yīng)消息而進(jìn)行正確的函數(shù)調(diào)用DECLARE_MESSAGE_MAP()<<一般消息傳遞過程視圖類->文檔類->框架類->應(yīng)用程序類如果在前一個類中定義了消息處理函數(shù),則消息不會再傳遞到后面的類中對于鼠標(biāo)、鍵盤、定時器等輸入消息,一般在視圖類中處理<<利用ClassWizard編制消息處理函數(shù)舉例例14_2接受并響應(yīng)鼠標(biāo)和鍵盤消息。當(dāng)按下鼠標(biāo)左鍵時,在消息框中顯示確切點的坐標(biāo);當(dāng)按下鍵盤鍵時,在消息框中顯示鍵值項目:my消息處理函數(shù)例子利用ClassWizard編制消息處理函數(shù)過程菜單View/ClassWizard顯示ClassWizard對話框為CMyView添加OnLButtonDown()函數(shù):voidCMyView::OnLButtonDown(UINTnFlags,CPointpoint){ //TODO:Addyourmessagehandlercodehereand/orcalldefault CStringstrDisplay; strDisplay.Format("X=%d,Y=%d",point.x,point.y); MessageBox(strDisplay); CView::OnLButtonDown(nFlags,point);}消息處理函數(shù)例子為CMyView添加OnKeyDown()函數(shù):voidCMyView::OnKeyDown(UINTnChar,UINTnRepCnt,UINTnFlags){ //TODO:Addyourmessagehandlercodehereand/orcalldefault CStringstrDisplay; strDisplay.Format(“用戶按下鍵%c,鍵值為%d",nChar,nChar); MessageBox(strDisplay); CView::OnKeyDown(nChar,nRepCnt,nFlags);}<<鼠標(biāo)和鍵盤消息處理常用鼠標(biāo)消息鼠標(biāo)消息處理函數(shù)鼠標(biāo)消息處理函數(shù)的參數(shù)常用鍵盤消息常用用戶按鍵代碼表<<常用鼠標(biāo)消息WM_LBUTTONDOWNWM_LBUTTONUPWM_LBUTTONDBLCLKWM_RBUTTONDOWNWM_RBUTTONUPWM_RBUTTONDBLCLKWM_MOUSEMOVE<<鼠標(biāo)消息處理函數(shù)對應(yīng)的消息處理函數(shù)…voidOnLButtonDown(UNITnFlags,CPointpoint);voidOnLButtonUp(UNITnFlags,CPointpoint);<<鼠標(biāo)消息處理函數(shù)的參數(shù)其中參數(shù)point表示鼠標(biāo)的位置nFlags表示幾個控制鍵的狀態(tài),可以是下列值及組合MK_CONTROLCTRL鍵被按下MK_LBUTTON鼠標(biāo)左鍵被按下MK_RBUTTON鼠標(biāo)右鍵被按下MK_SHIFTSHIFT鍵被按下<<常用鍵盤消息鍵盤消息響應(yīng)函數(shù)原型是:nChar為用戶按鍵代碼nRepCnt為按鍵重復(fù)次數(shù)nFlags為掃描碼、轉(zhuǎn)換鍵碼和按鍵組合狀態(tài)afx_msgvoidOnKeyDown(UINTnChar,UINTnRepCnt,UINTnFlags);<<常用用戶按鍵代碼表VK_0~VK_9數(shù)字鍵0~9VK_A~VK_Z字母鍵A~ZVK_BACKBACKSPACE鍵VK_CONTROLVK_DELETEVK_DOWNVK_ENDVK_ESCAPEVK_F1~VK_F10VK_HOME常用用戶按鍵代碼表VK_INSERTVK_LEFTVK_MENUALT鍵VK_NEXTPAGEDO
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負(fù)責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 企業(yè)借貸擔(dān)保合同
- 各行業(yè)主要市場占有率比較表
- 中國古代歷史名著中的史實考證與故事欣賞:高中文言文課程教案
- IT基礎(chǔ)設(shè)施建設(shè)作業(yè)指導(dǎo)書
- 鋼球網(wǎng)架施工方案
- 銷售渠道市場占有率統(tǒng)計表
- 鋼筋加工棚施工方案
- 220kv線路施工方案
- nalc板材的施工方案
- 邢臺橡塑風(fēng)管保溫施工方案
- GB/T 24475-2023電梯遠(yuǎn)程報警系統(tǒng)
- 統(tǒng)編教材四年級下冊語文第二單元教學(xué)解讀及建議1
- 《中式面點技藝(第二版)》教案(高教版)
- 六年級下冊數(shù)學(xué)同步學(xué)堂
- 通信施工安全生產(chǎn)培訓(xùn)(登高作業(yè)施工專題)
- 2015產(chǎn)后出血技能評分表new
- 人教版五年級下冊口算題大全(全冊齊全)
- 企業(yè)生產(chǎn)管理-9S現(xiàn)場管理培訓(xùn)PPT課件教材講義
- 護(hù)學(xué)崗值班登記表
- 2023年山東醫(yī)學(xué)高等??茖W(xué)校高職單招(語文)試題庫含答案解析
- 183-壓力計量器具檢定系統(tǒng)框圖
評論
0/150
提交評論