?? 03.2.5 文檔-視類結構.txt
字號:
3.2.5 文檔/視類結構
前面已經提到,我們創建的MFC程序除了主框架窗口以外,還有一個窗口是視類窗口,對應的類是CView類,CView類也派生于CWnd類。框架窗口是視類窗口的一個父窗口,它們之間的關系如圖3.20所示。主框架窗口就是整個應用程序外框所包括的部分,即圖中粗框以內的內容;而視類窗口只是主框架窗口中空白的地方。
可以看到Test程序中還有一個CTestDoc類,它派生于CDocument類。其基類是CCmdTarget,而后者又派生于CObject類,從而,可以知道這個CTestDoc類不是一個窗口類,實際上它是一個文檔類。
MFC提供了一個文檔/視(Document/View)結構,其中文檔就是指CDocument類,視就是指CView類。Microsoft在設計基礎類庫時,考慮到要把數據本身與它的顯示分離開,于是就采用文檔類和視類結構來實現這一想法。數據的存儲和加載由文檔類來完成,數據的顯示和修改則由視類來完成,從而把數據管理和顯示方法分離開來。文檔/視結構是MFC程序的一個重點,后面章節將詳細介紹此內容,讀者應很好地掌握。
我們回頭看看如例3-9所示CTestApp類的InitInstance函數實現代碼,可以看到其中定義了一個單文檔模板對象指針(①符號所示處的pDocTemplate變量)。該對象把文檔對象、框架對象、視類對象有機地組織在一起,程序接著利用AddDocTemplate函數把這個單文檔模板添加到文檔模板中,從而把這三個類組織成為一個整體。
?? 快捷鍵說明
復制代碼
Ctrl + C
搜索代碼
Ctrl + F
全屏模式
F11
切換主題
Ctrl + Shift + D
顯示快捷鍵
?
增大字號
Ctrl + =
減小字號
Ctrl + -