?? 03.2 基于mfc的程序框架剖析.txt
字號:
3.2 基于MFC的程序框架剖析
MFC庫是開發Windows應用程序的C++接口。MFC提供了面向對象的框架,程序開發人員可以基于這一框架開發Windows應用程序。MFC采用面向對象設計,將大部分的Windows API封裝到C++類中,以類成員函數的形式提供給程序開發人員調用。
下面我們看一下MFC AppWizard幫助我們生成的這些代碼。單擊左邊工作區窗格中的ClassView(類視圖)標簽頁,可以看到如圖3.10所示的五個類。
圖3.10 ClassView標簽頁
提示:如果要查看某個類提供的信息,可以在ClassView標簽頁上單擊該類前面的“+”符號,即可展開該類,顯示該類擁有的函數和屬性。
在MFC中,類的命名都以字母“C”開頭,就像Delphi中類名以T開頭,Oracle的類名以O開頭一樣,當然,這并不是必需的,這只是一種約定。對于一個單文檔應用程序(即我們在創建工程時第二步所選的Single document),都有一個CMainFrame類,和一個以“C+工程名+App”為名字的類、一個以“C+工程名+Doc”為名字的類、一個以“C+工程名+View”為名字的類。作為讀者,在剛接觸MFC的程序時,一定要逐步熟悉MFC AppWizard所生成的這幾個類,以及類中的代碼。這樣才能在閱讀程序時,知道哪些類、哪些代碼是向導生成的,哪些類、哪些代碼是我們自己編寫的。
在ClassView標簽頁中的類名上雙擊,右邊工作區窗格就會打開定義該類的頭文件。我們可以發現ClassView標簽頁中的這五個類都有一個基類,例如,CTestView派生于CView;CMainFrame派生于CFrameWnd……這些基類都是MFC中的類,可以查看一下這些基類的幫助信息。
提示:如果想查看某個類或函數的幫助,可以把當前光標放在該類或函數所在位置,然后按F1鍵,即可打開MSDN中相應幫助。在MSDN幫助頁中每個類的說明頁底部都有一個“Hierarchy Chart”超鏈接,單擊此鏈接,即可看到整個MFC類的組織結構圖。
圖3.11是MFC類組織結構圖中的一部分,可以發現CFrameWnd是由CWnd派生的。另外,也可以發現從CWnd派生的還有CView類。這就說明這個程序中的CMainFrame類和CTestView類追本溯源有一個共同的基類:CWnd類。CWnd類是MFC中一個非常重要的類,它封裝了與窗口相關的操作。
圖3.11 部分MFC類組織結構圖
?? 快捷鍵說明
復制代碼
Ctrl + C
搜索代碼
Ctrl + F
全屏模式
F11
切換主題
Ctrl + Shift + D
顯示快捷鍵
?
增大字號
Ctrl + =
減小字號
Ctrl + -