設計應用程序的基礎知識_第1頁
設計應用程序的基礎知識_第2頁
設計應用程序的基礎知識_第3頁
設計應用程序的基礎知識_第4頁
設計應用程序的基礎知識_第5頁
已閱讀5頁,還剩19頁未讀 繼續(xù)免費閱讀

下載本文檔

版權說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權,請進行舉報或認領

文檔簡介

設計應用程序的基礎知識1第一頁,共二十四頁,2022年,8月28日在VC++的編程中,利用WindowsAPI函數(shù)進行編程時,大量的代碼需要用戶自己編寫,及其戶編程的工作量較大。利用MFC和向導(Wizard)來編寫Windows應用程序:首先使用ClassWizard來生成Windows應用程序的基本框架然后用ClassWizard來建立應用程序的類、消息處理、數(shù)據(jù)處理函數(shù)或定義控件的屬性、事件和方法最后把各應用程序所要求的功能添加到類中2第二頁,共二十四頁,2022年,8月28日MFC1.0&MSC/C++7.0應用程序中非圖形部分的類GUI功能的Windows相關類MFC2.0&MSVC++1.0在1.0基礎上增添了一些應用程序MFC3.0&VC++2.0增添了對開發(fā)32位應用程序的支持MFC2.0&MSVC++1.5添加了ODBC類,并且還支持OLE的性能MFC4.0包含了在Win95和NT中大多數(shù)新的公共控件和DAO、MAPI增強了對數(shù)據(jù)庫應用程序的支持利用DAO類通過編程語言來訪問、操縱和管理數(shù)據(jù)庫對Internet也提供了強有力的支持MFC4.2110.1MFC概述3第三頁,共二十四頁,2022年,8月28日MFC還很好地保持了程序的向下兼容性是用來編寫Windows應用程序的C++類集以層次結構組織封裝了大部分API函數(shù)提供了圖形環(huán)境下應用程序的框架提供了創(chuàng)建應用程序的組件提供了大量的基類供程序員根據(jù)不同的應用環(huán)境進行擴充允許在編程過程中自定義和擴展應用程序中的類較好的移植性,可移植于眾多的平臺MFC4第四頁,共二十四頁,2022年,8月28日根類:CObjectMFC中多數(shù)類和用戶自定義子類的根類,是抽象基類。它提供了許多編程所需的公共操作。對象的建立對象的刪除運行時信息對象診斷輸出串行化支持應用程序和線程支持類命令相關類文檔類文檔模板類視類(體系結構)框架窗口(體系結構)應用程序體系結構類窗口、對話框和控件類框架窗口類(窗口)視類(窗口)對話框類控件條類繪圖和打印類輸出(設備相關)類繪圖工具類簡單數(shù)據(jù)類型類數(shù)組、列表和映射類數(shù)組類列表類映射類10.2MFC類的組織結構及主要的類的方法

10.2.1MFC類的組織結構5第五頁,共二十四頁,2022年,8月28日文件和數(shù)據(jù)庫類文件I/O類DAO類ODBC類Internet和網(wǎng)絡工作類ISAPI類WindowsSocket類Win32Internet類OLE類OLE容器類OLE服務器類OLE拖放和數(shù)據(jù)傳輸類OLE普通對話框類OLE動畫類OLE動畫類OLE控件類活動文檔類其他文檔類調試和異常類調試支持類異常類6第六頁,共二十四頁,2022年,8月28日1.命令相關類:CCmdTarget類該類是CObject的子類,它是MFC庫中所有具有消息映射屬性的基類。消息映射規(guī)定了當一對象接收到消息命令時,應調用哪一個函數(shù)對該消息進行處理。2.窗口應用程序類:CWinApp類每個應用程序有且只有一個應用程序對象,在運行程序中該對象與其它對象相互協(xié)調,該對象從CWinApp類中派生出來。CWinApp類封裝了初始化、運行、終止應用程序的代碼。應用程序體系結構類1.命令相關類2.窗口應用程序類3.文檔/視類4.線程基類編寫程序的任務是填充框架,添加應用程序專用的功能用于構造應用程序框架的結構,提供多數(shù)應用程序公用的功能10.2.2應用程序體系結構類

7第七頁,共二十四頁,2022年,8月28日3.文檔/視類文檔對象由文檔模板對象創(chuàng)建,管理應用程序的數(shù)據(jù)。視對象表示一個窗口的客戶區(qū),顯示文檔數(shù)據(jù)并允許用戶與之交互。4.線程基類:CWinThread類所有線程的基類,可直接使用。CWinApp類就是從CWinThread類中派生出來的。8第八頁,共二十四頁,2022年,8月28日2.視類:CView類該類表示框架窗口的客戶區(qū)和顯示文檔數(shù)據(jù)并接收輸入的客戶區(qū),其派生類主要有如下幾種:CScrollView:具有滾動功能的視的基類CFormView:其布局在對話資源中定義的滾動視CEditView:具有文本編輯、查找、替換和滾動功能的視1.窗口類:CWnd類Cwnd提供了MFC中所有窗口類的基本功能,是CCmdTarget類的子類創(chuàng)建Windows窗口要分兩步進行引入構造函數(shù),構造一個CWnd對象調用Create建立Windows窗口,并將它連到CWnd對象上10.2.3可視對象類

9第九頁,共二十四頁,2022年,8月28日3.菜單類:CMenu類該類是CObject類的子類,用于管理菜單。它是一個WindowsHMenu的封裝,提供了與窗口有關的菜單資源建立、修改、跟蹤及刪除的成員函數(shù)。4.對話框類:CDialog類由于對話框是一個特殊的窗口,所以該類是從CWnd類中派生出來的。對話框子層次結構包括通用對話框類CDialog以及支持文件選擇、顏色選擇、字體選擇、打印、替換文本的公共對話框子類。10第十頁,共二十四頁,2022年,8月28日5.控件類控件子層次結構包括若干類,使用這些類可建立靜態(tài)文本、命令按鈕、位圖按鈕、列表框、組合框、滾動條、編輯框等。這些直觀控件為Windows應用程序提供了各種輸入和顯示界面。6.控件條類:CControlBar類控件條子層次結構為工具條、狀態(tài)條、對話條和分割窗口建立模型。該類是CToolBar、CStatusBar、CDialogBar的基類,負責管理工具條、狀態(tài)條、對話條的一些成員函數(shù)??丶l指的是連接在主窗口框架的頂部或底部的小窗口。11第十一頁,共二十四頁,2022年,8月28日7.繪畫對象類:CGdiObject類圖形繪畫對象子層次結構以CGdiObject類為根類,可用于建立繪畫對象模型,如畫筆、刷子、字體、位圖、調色板等。8.設備描述表類:CDC類該類及其子類支持設備描述表對象,是CObject類的子類。CDC類是一個較大的類,包括許多成員函數(shù),如映射函數(shù)、繪畫工具函數(shù)、區(qū)域函數(shù)等,通過CDC對象的成員函數(shù)可以完成所有的繪畫工作。12第十二頁,共二十四頁,2022年,8月28日此類提供了許多通用服務,例如文件I/O、診斷和異常處理等,此外還包括如數(shù)組和列表等存放數(shù)據(jù)集的類。1.文件類:CFile類和CArchive類用以編寫輸入輸出處理函數(shù)。2.異常類:CException類是所有異常情況的基類。不能直接建立CException對象,只能建立派生類的對象,用派生類來捕獲指定的異常情況。3.模板收集類這些類可以將多種對象存放到數(shù)組、列表和“映射”中。但這些收集類是模板,它們的參數(shù)確定了存放在集合中的對象類型。10.2.4通用類

13第十三頁,共二十四頁,2022年,8月28日開放數(shù)據(jù)庫連接子層次結構提供了一些類來支持ODBC特征,即通過這些類可開發(fā)數(shù)據(jù)庫應用程序來訪問多個數(shù)據(jù)庫文件。對象連接與嵌入子層次結構為支持OLE提供了9個類普通類COleDocuemntCOleItemCOleException客戶類COleClientDocCOleClientItem服務器類COleServerCOleTemplateCOleServerDocCOleServerItem10.2.5OLE類

10.2.6ODBC數(shù)據(jù)庫類

14第十四頁,共二十四頁,2022年,8月28日以Afx開頭的函數(shù)除數(shù)據(jù)庫類函數(shù)和DDX(DialogDataExchange)函數(shù)外,在目前的版本中,都表示是一個全局函數(shù)。以Afx為前綴的變量,都是全局變量。10.3MFC中全局函數(shù)與全局變量

15第十五頁,共二十四頁,2022年,8月28日應用程序向導為程序員提供了一個基于MFC的應用程序框架,程序員可以在此基礎上添加實現(xiàn)特定功能的代碼即可。10.4應用程序向導及其應用步驟

16第十六頁,共二十四頁,2022年,8月28日17第十七頁,共二十四頁,2022年,8月28日

溫馨提示

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

評論

0/150

提交評論