第2講MFC程序設(shè)計(jì)基礎(chǔ)(new)_第1頁
第2講MFC程序設(shè)計(jì)基礎(chǔ)(new)_第2頁
第2講MFC程序設(shè)計(jì)基礎(chǔ)(new)_第3頁
第2講MFC程序設(shè)計(jì)基礎(chǔ)(new)_第4頁
第2講MFC程序設(shè)計(jì)基礎(chǔ)(new)_第5頁
已閱讀5頁,還剩13頁未讀, 繼續(xù)免費(fèi)閱讀

下載本文檔

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

文檔簡介

1、 MFC程序設(shè)計(jì)基礎(chǔ) v重點(diǎn):MFC的特點(diǎn),MFC中的類和應(yīng)用框 架程序 v難點(diǎn):MFC的消息處理和運(yùn)行模式 v掌握:簡單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è)類來封裝WinMain和窗口函數(shù)的功能 其他對(duì)象 CWinApp對(duì)象 CWnd對(duì)象 系統(tǒng) 消息 消息 消息 創(chuàng)建 創(chuàng)建 創(chuàng)建 消息 2.3.簡單的簡單的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ù)中使用從父類繼承來的 Create

4、成員函數(shù)來建立窗口。該函數(shù)的參數(shù) 說明見書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ù)定義的宏來關(guān)聯(lián)消息和消息成員處理函數(shù),如 ON_WM_PAINT()宏用來建立WM_PAINT消息到一個(gè)窗口類 OnPaint成員函數(shù)間的映射關(guān)系,當(dāng)該窗口類管理的窗口接 收到WM_PAINT消息時(shí),框架會(huì)自動(dòng)調(diào)用該窗口類的 OnPaint成員函數(shù)。 v消息種類很多,所以來接消息和消息處理成 員函數(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. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
  • 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫網(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)論