




版權說明:本文檔由用戶提供并上傳,收益歸屬內容提供方,若內容存在侵權,請進行舉報或認領
文檔簡介
1、2022-3-161 2022-3-1622022-3-1632022-3-1642022-3-1651.VC+1.VC+編程的實現方法編程的實現方法F利用利用Windows APIWindows API函數編程,用戶需要編寫函數編程,用戶需要編寫大量的代碼,工作量大。大量的代碼,工作量大。F利用利用MFCMFC和向導和向導( (WizardWizard) )實現可視化編程實現可視化編程, ,其其步驟如下:步驟如下:用用Class WizardClass Wizard生成應用程序的基本框架;生成應用程序的基本框架;用用Class WizardClass Wizard建立類、消息處理、數據處理建
2、立類、消息處理、數據處理函數或定義控件的屬性、事件和方法:函數或定義控件的屬性、事件和方法:把各應用程序所要求的功能添加到類中。把各應用程序所要求的功能添加到類中。2022-3-166FMFCMFC是用來編寫是用來編寫WindowsWindows應用程序應用程序的的C+C+類集類集以層次結構組織以層次結構組織封裝了大部分封裝了大部分APIAPI函數函數提供了提供了圖形環境圖形環境下應用程序的框架下應用程序的框架提供了創建應用程序的組件提供了創建應用程序的組件F提供大量的基類便于不同的應用環境進行擴充提供大量的基類便于不同的應用環境進行擴充F允許自定義和擴展應用程序中的類允許自定義和擴展應用程序
3、中的類F較好的移植性,較好的移植性,可移植于眾多的平臺可移植于眾多的平臺F很好地保持了程序的向下兼容性很好地保持了程序的向下兼容性2022-3-167FMFCMFC1.01.0& &C/C+7.0C/C+7.0提供提供應用程序中非圖形部分的類應用程序中非圖形部分的類GUIGUI功能的功能的WindowsWindows相關類;相關類;FMFCMFC2.02.0& &VC+1.0VC+1.0增添一些應用程序;增添一些應用程序;FMFCMFC2.02.0& &VC+1.5VC+1.5加了加了ODBCODBC類,并支持類,并支持OLEOLE性能;性能;F
4、MFCMFC3.03.0& &VC+2.0VC+2.0支持開發支持開發3232位應用程序;位應用程序;FMFCMFC4.04.0包含了在包含了在Win95Win95和和NTNT中大多數新的公共控件中大多數新的公共控件和和DAODAO、MAPIMAPI;FMFCMFC4.214.21增強了對數據庫應用程序的支持,利用增強了對數據庫應用程序的支持,利用DAODAO類通過編程語言來訪問、操縱和管理數據庫,類通過編程語言來訪問、操縱和管理數據庫,對對InternetInternet也提供了強有力的支持。也提供了強有力的支持。(請參閱教材(請參閱教材263263頁)頁)2022-3-16
5、8 (請參閱教材(請參閱教材263-269263-269頁)頁)2022-3-1691. MFC類的組織結構類的組織結構2022-3-16101. MFC類的組織結構(續)類的組織結構(續)2022-3-16112022-3-16122022-3-16132022-3-16142. 根類根類F根類根類CobjectCobject的的多數是多數是抽象基類抽象基類。提供了。提供了許多編程所需的公共操作:許多編程所需的公共操作:2022-3-16153.應用程序體系結構類應用程序體系結構類F用于構造應用程序框架,提供多數應用程序用于構造應用程序框架,提供多數應用程序公用的功能公用的功能F編寫程序的任
6、務是填充框架,添加應用程序編寫程序的任務是填充框架,添加應用程序專用的功能;專用的功能;F其中較重要類:其中較重要類:命令相關類;命令相關類;窗口應用程序類;窗口應用程序類;文檔文檔/ /視類;視類;線程基類;線程基類;.2022-3-1616FCObjectCObject的子類的子類; ;FMFCMFC庫中所有具有消息映射屬性的基類。庫中所有具有消息映射屬性的基類。F消息映射消息映射規定了當一對象接收到消息命令時,應規定了當一對象接收到消息命令時,應調用哪一個函數對該消息進行處理。調用哪一個函數對該消息進行處理。(2)(2)窗口應用程序類:窗口應用程序類:CWinAppCWinApp類類F每
7、個應用程序有且僅有一個從每個應用程序有且僅有一個從CWinAppCWinApp類中派生的類中派生的對象。在運行程序中該對象與其它對象相互協調;對象。在運行程序中該對象與其它對象相互協調;FCWinAppCWinApp類封裝了類封裝了初始化、運行、終止初始化、運行、終止應用程序的應用程序的代碼。代碼。(1)(1)命令相關類:命令相關類:CCmdTargetCCmdTarget類類2022-3-1617(3)(3)文檔文檔/ /視類視類F文檔對象文檔對象由文檔模板對象創建,管理應用程序的由文檔模板對象創建,管理應用程序的數據數據; ;F視對象視對象表示一個窗口的客戶區,顯示文檔數據并表示一個窗口的
8、客戶區,顯示文檔數據并允許用戶與之交互。允許用戶與之交互。(4)(4)線程基類:線程基類:CWinThreadCWinThread類類F所有線程的基類,可直接使用。所有線程的基類,可直接使用。FCWinAppCWinApp類就是從類就是從CWinThreadCWinThread類中派生出來的。類中派生出來的。2022-3-16182022-3-1619(1)(1)窗口類窗口類CWndCWnd類類FCwndCwnd是是CCmdTargetCCmdTarget類的子類,提供了所有窗口類的基本類的子類,提供了所有窗口類的基本功能;功能;F創建創建WindowsWindows窗口的兩個步驟:窗口的兩個
9、步驟:H 引入構造函數,構造一個引入構造函數,構造一個CWndCWnd對象對象H 調用調用CreateCreate建立建立WindowsWindows窗口,并連到窗口,并連到CWndCWnd對象對象(2)(2)視類視類CViewCView類類F表示框架窗口的用戶區和顯示文檔數據并接收輸入的用表示框架窗口的用戶區和顯示文檔數據并接收輸入的用戶區;戶區;F其主要派生類:其主要派生類:H CScrollViewCScrollView:具有滾動功能的視的基類:具有滾動功能的視的基類H CFormViewCFormView:其布局在對話資源中定義的滾動視:其布局在對話資源中定義的滾動視H CEditVi
10、ewCEditView:具有文本編輯、查找、替換和滾動功能的視:具有文本編輯、查找、替換和滾動功能的視2022-3-1620(3)(3)菜單類菜單類CMenuCMenu類類FCObjectCObject類的子類,用于管理菜單。類的子類,用于管理菜單。F一個一個Windows Windows HMenuHMenu的封裝,提供了菜單資源建的封裝,提供了菜單資源建立、修改、跟蹤及刪除的成員函數。立、修改、跟蹤及刪除的成員函數。(4)(4)對話框類對話框類CDialogCDialog類類F從從CWndCWnd類中派生出來的特殊的窗口類。類中派生出來的特殊的窗口類。F包括通用對話框類包括通用對話框類CD
11、ialogCDialog以及支持文件選擇、以及支持文件選擇、顏色選擇、字體選擇、打印、替換文本的公共標準顏色選擇、字體選擇、打印、替換文本的公共標準對話框子類。對話框子類。2022-3-1621(5)(5)控件類控件類F包括若干主要類:包括若干主要類:H按鈕按鈕H靜態文本靜態文本H滾動條滾動條H編輯框編輯框H.,F為為WindowsWindows應用程序提供了各種輸入和顯示界面。應用程序提供了各種輸入和顯示界面。F用于建立靜態文本、命令按鈕、位圖按鈕、列表用于建立靜態文本、命令按鈕、位圖按鈕、列表框、組合框、滾動條、編輯框等。框、組合框、滾動條、編輯框等。2022-3-1622(6)(6)控件
12、條類控件條類CControlBarCControlBar類類F連接在主窗口框架的頂部或底部的小窗口;連接在主窗口框架的頂部或底部的小窗口;F為工具條、狀態條、對話條和分割窗口建立模型;為工具條、狀態條、對話條和分割窗口建立模型;F包括如下的基類:包括如下的基類:FCToolBarCToolBar工具條;工具條;FCStatusBarCStatusBar狀態條;狀態條;FCDialogBarCDialogBar對話條。對話條。2022-3-1623(7)(7)繪畫對象類繪畫對象類CGdiObjectCGdiObject類類F圖形繪畫對象子層次結構以圖形繪畫對象子層次結構以CGdiObjectCG
13、diObject類為根類類為根類; ;F可用于建立繪畫對象模型,如畫筆、刷子、字體、可用于建立繪畫對象模型,如畫筆、刷子、字體、位圖、調色板等。位圖、調色板等。F其子類有:其子類有:FCbitmpCbitmp: :位圖位圖FCbrushCbrush: :刷子刷子FCfontCfont: :字體字體FCpaletteCpalette: :調色板調色板FCPenCPen: :畫筆畫筆FCRgnCRgn: :域域2022-3-1624(8)(8)設備描述表類設備描述表類CDCCDC類類F是是CObjectCObject類的子類;其子類有:類的子類;其子類有:HCpainDCCpainDCHCClie
14、ntDCCClientDCHCWindowDCCWindowDCHCMetaFileDCCMetaFileDCF該類及其子類支持設備描述表對象;該類及其子類支持設備描述表對象;F包括許多成員函數,如映射函數、繪畫工具函包括許多成員函數,如映射函數、繪畫工具函數、區域函數等,可以完成所有的繪畫工作。數、區域函數等,可以完成所有的繪畫工作。2022-3-16252022-3-1626(1)(1)文件類文件類F用以編寫輸入輸出處理函數。用以編寫輸入輸出處理函數。F主要文件類有:主要文件類有:HCFileCFile類類: :訪問二進制磁盤文件訪問二進制磁盤文件HCMemFileCMemFile類:訪問
15、住內存文件類:訪問住內存文件HCStdioFileCStdioFile類:訪問(文本)磁盤文件類:訪問(文本)磁盤文件HCArchiveCArchive類:與類:與CfileCfile對象一起通過串行化實現對象對象一起通過串行化實現對象的永久存儲。的永久存儲。2022-3-1627(2)(2)異常類異常類CExceptionCException類類FCExceptionCException是所有異常情況的是所有異常情況的基類基類。F不能直接建立不能直接建立CExceptionCException對象,只能建立對象,只能建立派生類派生類的的對象,用派生類來捕獲指定的異常情況對象,用派生類來捕獲指
16、定的異常情況FCexceptionCexception的派生類有:的派生類有:HCArchiveExceptionCArchiveException類類: :歸檔異常歸檔異常HCFileExceptionCFileException類類: :文件異常文件異常HCMemoryExceptionCMemoryException類類: :內存(不夠)異常內存(不夠)異常HCNotSupportedExceptionCNotSupportedException類類: :用未支持特征異常用未支持特征異常HCResourceExceptionCResourceException類類: :裝載資源(失敗)異
17、常裝載資源(失敗)異常HCUseExceptionCUseException類類: :用于停止用戶起動的操作異常用于停止用戶起動的操作異常2022-3-1628(3)(3)模板收集類模板收集類F可將多種對象存放到數組、列表和可將多種對象存放到數組、列表和“ “ 映射映射”中。但這中。但這些收集類是模板,它們的參數確定了存放在集合中的對些收集類是模板,它們的參數確定了存放在集合中的對象類型。象類型。F主要的模板收集類有:主要的模板收集類有:HCArryCArry類類: :元素存入數組元素存入數組HCMapCMap類類: :鍵映射到值鍵映射到值HCListCList類類: :元素存入鏈表元素存入鏈
18、表HCTypedPtrListCTypedPtrList類類: :將對象指針存入鏈表的類型將對象指針存入鏈表的類型HCTypedPtrArrayCTypedPtrArray類類: :將對象指針存入數組的類型將對象指針存入數組的類型HCTypedPtrMapCTypedPtrMap類類: :將鍵指針映射到值指針的類型將鍵指針映射到值指針的類型2022-3-1629F對象連接與嵌入類對象連接與嵌入類包括包括3 3組組, ,共共9 9個類。個類。F普通類普通類COleDocuemntCOleDocuemntCOleItemCOleItemCOleExceptionCOleExceptionF客戶類客
19、戶類COleClientDocCOleClientDocCOleClientItemCOleClientItemF服務器類服務器類COleServerCOleServerCOleTemplateCOleTemplateCOleServerDocCOleServerDocCOleServerItemCOleServerItem2022-3-1630F開放數據庫連接開放數據庫連接層提供了一些類來支持層提供了一些類來支持ODBCODBC特征特征, ,即通過這些類可開發數據庫應用程序來訪問多個數即通過這些類可開發數據庫應用程序來訪問多個數據庫文件。據庫文件。F主要包括的類主要包括的類:HCDataBa
20、seCDataBase類:對一個數據源的連接類:對一個數據源的連接HCrecordsetCrecordset類:選一組記錄類:選一組記錄HCRecordViewCRecordView類:直接連接一記錄集的格式視類:直接連接一記錄集的格式視HCFieldExchangeCFieldExchange類:支持記錄字段交換類:支持記錄字段交換HCLongBinaryCLongBinary類:封裝一存儲句柄類:封裝一存儲句柄HCDBExceptionCDBException類:數據存取處理(失敗)異常類:數據存取處理(失敗)異常2022-3-1631 2022-3-1632。2022-3-1633全局函
21、數全局函數函函數數名名功功能能簡簡介介AfxAbort無無條條件件終終止止一一個個應應用用程程序序AfxBeginThread創創建建一一個個新新線線程程并并執執行行它它AfxEndThread終終止止當當前前正正在在執執行行的的線線程程AfxFormatString格格式式化化字字符符串串AfxMessageBox顯顯示示一一個個 Windows消消息息框框AfxGetApp返返回回當當前前應應用用程程序序對對象象的的指指針針AfxGetInstanceHandle返返回回標標識識當當前前應應用用程程序序對對象象的的句句柄柄AfxRegisterWndClass登登記記用用于于創創建建 Window
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯系上傳者。文件的所有權益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網頁內容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
- 4. 未經權益所有人同意不得將文件中的內容挪作商業或盈利用途。
- 5. 人人文庫網僅提供信息存儲空間,僅對用戶上傳內容的表現方式做保護處理,對用戶上傳分享的文檔內容本身不做任何修改或編輯,并不能對任何下載內容負責。
- 6. 下載文件中如有侵權或不適當內容,請與我們聯系,我們立即糾正。
- 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 藥品質量檔案管理制度
- 藥品除險保安管理制度
- 藥店國談品種管理制度
- 設備倉庫衛生管理制度
- 設備員工安全管理制度
- 設備異物控制管理制度
- 設備油料使用管理制度
- 設備維修安全管理制度
- 設施公眾開放管理制度
- 設計公司會議管理制度
- 腰椎間盤突出癥中醫護理查房
- 薄壁空心墩施工方案
- 多重耐藥菌醫院感染預防與控制技術指南(試行)
- 教師如何使用AI開展教學DeepSeek使用指南人工智能 課件
- 地面注漿施工方案
- 委托種植水果協議
- 《股骨粗隆間骨折》課件
- 深圳“20+8”之生物醫藥產業-前景機遇與技術趨勢探析報告-前瞻產業研究院
- 高壓電力知識培訓課件
- 2024煤礦安全生產條例、兩辦意見、硬措施試卷
- 2025年江蘇省安全員《A證》考試題庫及答案
評論
0/150
提交評論