?? untitled-08.txt
字號:
復雜,并且很難預知應用程序可能會遇到的所有執行方案。第三,看到如何進行Windows程
序設計會使您對MFC和其他類庫有一個基本的評價。MFC并不像某些支持者所說的那樣
是包治百病的靈丹妙藥,但它確實無可否認地使Wndows程序設計的某些方面變得更容易
了。并且,它為Windows程序設計提供的優良規則使程序員不必花更多的時間開發一個程
序的結構組件,他們也可以不必過多地考慮傳遞給Createwindow的樣式標志及其他關于API
的無關緊要的內容了。如果您沒接觸過MFC,現在是時候了。Windows程序設計從來沒有
如此容易過,MFC的好處就在于Microsoft已經為您寫好了幾萬行代碼,并對其進行了測試。
1.2 MFC簡介
Microsoft提供的 MFC是放置 Windows API的面向對象的包裝的 C+十類庫。 MFC 6.0版
本封裝了大約200個類,其中的一些您可以直接使用,而另一些則主要作為您自己的類的基
礎類。一些MFC類極其簡單,例如 CPoint類,它代表一個點(一個由 x和 y坐標定義的位
置)。有些類較復雜,例如 CWnd類,它封裝了窗口的功能。在 MFC程序中,您并不經常直
接調用 Windows API;而是從 MFC類創建對象并調用屬于這些對象的成員函數。在類庫中
定義的成員函數有幾百個,其中許多是Windows API的簡單封裝,甚至與相應的 API函數具
有一樣的名字。這種命名約定的一個明顯好處是它加速了C程序員轉變為MFC程序員的
過程。想要移動一個窗口?一個 C程序員可能會調用 SetwindowPos API函數。請在 MFC手
冊中查閱一下SetwndowP0s,您將看到MFC也支持SetwndowPos。它是CWnd類的一個成
員,這可以理解為將窗口作為一個對象,而SetwindowPos是希望在該對象上進行的操作。
MFC也是一個應用程序的框架結構。MFC不僅僅是一個類集合,它還幫助定義了應用
程序的結構并為應用程序處理許多雜務。以CWinApp類為例,該類代表應用程序自身,MFC
幾乎封裝了程序操作的所有方面。框架結構提供WinMain函數,而WinMain反過來調用應
用程序對象的成員函數使程序運行下去。Run是WinMain調用的一個CWinApp成員函數,
它提供了一個消息循環,將消息送到應用程序的窗口。框架結構還提供了抽象功能,它遠遠
超出了 Windows API的功能。例如: MFC的文檔/視圖體系結構在 API上建造了一個功能強
大的基礎結構,它把程序中數據的圖形表示(或稱為視圖)與數據本身分開。這種抽象對
API而言完全是陌生的,而且在MFC框架結構之外或相似類庫中也不存在。
1.2. 1使用 C +十和 MFC的好處
閱讀本書就說明您有可能已經聽到過對面向對象設計方法的傳統的贊譽了:可重用
性,代碼和數據更緊密的捆綁,等等。您應該也已經對常用的面向對象程序設計(00P)術語
很熟悉了,比如對象、繼承和封裝,它們屬于 C+十語言。但是如果沒有一個好的類庫作為出
發點,OOP可能不會減少您編寫代碼的數量。
這正是MFC成功的地方。要給應用程序添加一個工具欄,使它能夠被放置在窗口的各
?? 快捷鍵說明
復制代碼
Ctrl + C
搜索代碼
Ctrl + F
全屏模式
F11
切換主題
Ctrl + Shift + D
顯示快捷鍵
?
增大字號
Ctrl + =
減小字號
Ctrl + -