![第2講MFC程序設(shè)計(jì)基礎(chǔ)(new)_第1頁(yè)](http://file2.renrendoc.com/fileroot_temp3/2021-7/9/2bd91eff-b130-4383-a3ed-6605dfa0fc52/2bd91eff-b130-4383-a3ed-6605dfa0fc521.gif)
![第2講MFC程序設(shè)計(jì)基礎(chǔ)(new)_第2頁(yè)](http://file2.renrendoc.com/fileroot_temp3/2021-7/9/2bd91eff-b130-4383-a3ed-6605dfa0fc52/2bd91eff-b130-4383-a3ed-6605dfa0fc522.gif)
![第2講MFC程序設(shè)計(jì)基礎(chǔ)(new)_第3頁(yè)](http://file2.renrendoc.com/fileroot_temp3/2021-7/9/2bd91eff-b130-4383-a3ed-6605dfa0fc52/2bd91eff-b130-4383-a3ed-6605dfa0fc523.gif)
![第2講MFC程序設(shè)計(jì)基礎(chǔ)(new)_第4頁(yè)](http://file2.renrendoc.com/fileroot_temp3/2021-7/9/2bd91eff-b130-4383-a3ed-6605dfa0fc52/2bd91eff-b130-4383-a3ed-6605dfa0fc524.gif)
![第2講MFC程序設(shè)計(jì)基礎(chǔ)(new)_第5頁(yè)](http://file2.renrendoc.com/fileroot_temp3/2021-7/9/2bd91eff-b130-4383-a3ed-6605dfa0fc52/2bd91eff-b130-4383-a3ed-6605dfa0fc525.gif)
版權(quán)說(shuō)明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡(jiǎn)介
1、 MFC程序設(shè)計(jì)基礎(chǔ) v重點(diǎn):MFC的特點(diǎn),MFC中的類和應(yīng)用框 架程序 v難點(diǎn):MFC的消息處理和運(yùn)行模式 v掌握:簡(jiǎn)單MFC程序的編制 2.1MFC概述 v什么是MFC? 1)最初的Windows程序設(shè)計(jì): 2)C+ 程序設(shè)計(jì)(面向?qū)ο螅?2.1.1 MFC與應(yīng)用程序框架 vMFC定義了 應(yīng)用程序框架的好處 2.1.2 MFC的組成 MFC主要由一組類,一些宏以及若干個(gè)全局函數(shù)組成。作用 : 2.1.3 MFC中的類 MFC中的類分為兩種(見書P20圖2.1): v從CObject類派生的類(絕大部分) v沒有父類的非派生類 CObject派生類包含Windows API的接口類: CWi
2、nApp、 CWnd、 Cmenu 、CGdiObject 、 CDC 2.2 MFC程序的特點(diǎn) MFC編程與Windows API編程的異同之處: 相同點(diǎn): 不同點(diǎn): 2.2.1 MFC與消息處理 2.2.2 MFC運(yùn)行模式 MFC使用兩個(gè)類來(lái)封裝WinMain和窗口函數(shù)的功能 其他對(duì)象 CWinApp對(duì)象 CWnd對(duì)象 系統(tǒng) 消息 消息 消息 創(chuàng)建 創(chuàng)建 創(chuàng)建 消息 2.3.簡(jiǎn)單的簡(jiǎn)單的MFC程序程序 1、包含afxwin.h頭文件 此頭文件包含了MFC包含的各種類,宏,全 局函數(shù),還包還了Windows.h 2、派生應(yīng)用程序類 CWinApp類封裝了應(yīng)用程序的初始化、運(yùn)行 和終止等功能,
3、所以基于框架的應(yīng)用程序必 須有且只有一個(gè)CWinApp類及其派生類的對(duì) 象。 3、派生窗口類 CWnd:OnPain成員函數(shù)負(fù)責(zé)處理發(fā)給窗口的WM_PAINT消 息,可以實(shí)現(xiàn)窗口繪制,因此需要對(duì)CWnd派生子類,并重 載(重寫)OnPaint成員函數(shù)。 在MFC中,CWnd的一些派生類對(duì)CWnd實(shí)現(xiàn)了更高的封裝, 不僅添加了功能,而且使用更方便,如CFrameWnd。本例 的窗口類為了使用更方便就是從CFrameWnd進(jìn)行派生的。 另外,MFC程序中需要使用 DECLARE_MESSAGE_MAP()宏為類添加消息處理能力。 4、建立窗口 v在窗口類的構(gòu)造函數(shù)中使用從父類繼承來(lái)的 Create
4、成員函數(shù)來(lái)建立窗口。該函數(shù)的參數(shù) 說(shuō)明見書P24。 v在重載的InitInstance成員函數(shù)中添加建立程 序窗口的代碼,程序在初始化時(shí)完成窗口的 建立(new 一個(gè)窗口類,創(chuàng)建窗口類對(duì)象的 同時(shí),構(gòu)造函數(shù)創(chuàng)建窗口)和顯示(調(diào)用 ShowWindow和UpdateWindow)。代碼見 書P24。 5、加入消息映射 v以BEGIN_MASSAGE_MAP()開始、以 END_MASSAGE_MAP()結(jié)束的一組宏與類的定義中,所使 用的DECLARE_MESSAGE_MAP()宏一起,可以建立窗口 消息與消息處理成員函數(shù)間的對(duì)應(yīng)關(guān)系,這些宏被統(tǒng)稱為消 息映射宏。 vBEGIN_MASSAGE_
5、MAP()宏有兩個(gè)參數(shù),分別是處理消息 的類及其父類。 vBEGIN_MASSAGE_MAP()和END_MASSAGE_MAP()之間, 使用一些預(yù)定義的宏來(lái)關(guān)聯(lián)消息和消息成員處理函數(shù),如 ON_WM_PAINT()宏用來(lái)建立WM_PAINT消息到一個(gè)窗口類 OnPaint成員函數(shù)間的映射關(guān)系,當(dāng)該窗口類管理的窗口接 收到WM_PAINT消息時(shí),框架會(huì)自動(dòng)調(diào)用該窗口類的 OnPaint成員函數(shù)。 v消息種類很多,所以來(lái)接消息和消息處理成 員函數(shù)的宏也很多,用戶可以通過MSDN進(jìn) 行查詢。 v消息映射宏及OnPaint代碼見書P25。 6、建立MFC應(yīng)用程序?qū)ο?C02App theApp;
6、1、啟動(dòng)VC 2、菜單”FILE”NEW”,后選擇“Win32 Application”,并在 右側(cè)“Project name:”后輸入框中輸入工程名后,點(diǎn)擊 “OK”按鈕,然后選擇“An empty project”后,選擇 “Finish”按鈕后,選擇“OK”按鈕。 3、菜單”FILE”NEW”,選擇“files”后選擇列表框中的“C+ Source File”后,在右側(cè)“File”后輸入框中輸入文件名后 選擇“OK”按鈕。 4、輸入程序源代碼。-以上同第一章,也可以直接將第一章 的源碼替換為第二章源碼。 5、修改項(xiàng)目屬性:菜單”Project”Settings”,在“General” 選項(xiàng)卡中的“Mi
溫馨提示
- 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ù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
- 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ì)自己和他人造成任何形式的傷害或損失。
最新文檔
- 2025年度供應(yīng)鏈管理保密合作協(xié)議
- 2025年度菌類食品市場(chǎng)拓展與代理合同
- 給公司建議書15篇
- 2025年家教服務(wù)合同范本更新版
- 電力企業(yè)財(cái)務(wù)系統(tǒng)的運(yùn)行穩(wěn)定性的重要性分析
- 糖尿病護(hù)理的心得體會(huì)15篇
- 2025年度影視作品版權(quán)代理合同范本
- 2025年度建筑節(jié)能技術(shù)研發(fā)與應(yīng)用合作協(xié)議
- 電商物流與供應(yīng)鏈管理一體化研究
- 經(jīng)典誦讀活動(dòng)總結(jié)(集錦15篇)
- CJT252-2011 城鎮(zhèn)排水水質(zhì)水量在線監(jiān)測(cè)系統(tǒng)技術(shù)要求
- 2024年執(zhí)業(yè)醫(yī)師考試-醫(yī)師定期考核(人文醫(yī)學(xué))筆試參考題庫(kù)含答案
- 【心理學(xué)與個(gè)人成長(zhǎng)課程論文3500字】
- JJG 1138-2017煤礦用非色散紅外甲烷傳感器
- 2024年極兔速遞有限公司招聘筆試參考題庫(kù)附帶答案詳解
- 2024-2030年中國(guó)無(wú)人機(jī)光電吊艙行業(yè)市場(chǎng)深度研究及投資規(guī)劃建議報(bào)告
- 2024年考研政治試題及詳細(xì)解析
- 征兵工作試題
- 2021新安全生產(chǎn)法解讀
- 數(shù)據(jù)遷移解決方案
- 2024供電營(yíng)業(yè)規(guī)則學(xué)習(xí)課件
評(píng)論
0/150
提交評(píng)論