配置:mfc:微軟基礎類庫(microsoft foundation classes)微軟公司提供的類庫,以 **c++** 形式封裝了windows api,並且包含了乙個應用程式框架,減少開發工作量。
mfc需要包含標頭檔案#include原始檔是.cpp
程式開始時,先例項化應用程式類物件
執行程式的入口函式initinstance
給框架類myframe物件動態分配控制項(呼叫他的建構函式),在建構函式內部,通過cwnd::create建立視窗
框架類物件顯示視窗cwnd::showwindow
框架類物件更新視窗cwnd::updatewindow
儲存框架類物件執行cwinthread::m_pmainwnd
宣告巨集寫到.h中訊息對映是乙個將訊息和成員函式相互關聯的表:
比如,視窗接收到了乙個滑鼠單擊訊息,mfc將搜尋該視窗的訊息對映,如果有乙個
處理wm_lbuttondown訊息的處理程式,就會呼叫onlbuttondown
declare_message_map()
分界巨集 寫到.cpp中
begin_message_map(myframe, cframewnd)
end_message_map()
找到訊息巨集 寫到分界巨集中間
on_wm_lbuttondown()
on_wm_char()
on_wm_paint()
把函式原型宣告寫到.h中
afx_msg void onlbuttondown(uint, cpoint);
afx_msg void onchar(uint, uint,uint);
afx_msg void onpaint();
函式的實現寫到.cpp中
標頭檔案
cpp#pragma once
#include
//mfc標頭檔案
class:;
// 框架類(視窗類) cframewnd派生類(子類)
class
myframe
:public cframewnd
;
建立時選擇mfc應用程式#include
"mfcp.h"
//對應類宣告的標頭檔案
//有且只有乙個的應用程式類
initinstance()
//程式入口位址
//分界巨集 定義訊息巨集 必須用在類實現中
begin_message_map
(myframe, cframewnd)
//訊息對映機制應用的類,該類的基類 //開始
on_wm_lbuttondown()
//滑鼠左鍵按下
on_wm_char()
//鍵盤
on_wm_paint()
//繪圖
end_message_map()
//結束
myframe::
myframe()
void myframe::
onlbuttondown
(uint, cpoint point)
void myframe::
onchar
(uint key, uint, uint)
void myframe::
onpaint()
暫時選擇,單個文件,mfc標準
一路下一步,在這裡可以配置視窗樣式
鑑於解決方案比較多,可以在類檢視中進行檢視。
在類檢視中雙擊其中乙個類,可以定位到該類的標頭檔案中;雙擊類檢視下方的函式可進入cpp中。
類檢視中右鍵類,選擇屬性,右側選擇訊息
在建立出的五個類中,caboutdlg為關於的視窗;
資料的儲存和載入由文件類來完成,資料的顯示和修改則通過視類(view)來完成;
view覆蓋在frame之上,所有滑鼠事件寫在view類中;
在frame類中,有乙個precreatewindow函式,可以在視窗生成前修改視窗外觀,通過傳遞createstruct結構體引數完成;create()建立視窗成功後會傳送乙個訊息wm_create,oncreate()來相應這個訊息;
mfc中afx字首的函式都是全域性函式;
如在c***xxview類中右鍵屬性–訊息–滑鼠左鍵,在填充的**中完成想要的操作
draw事件
如果有了ondraw 就不要有onpaint,同時存在時,onpaint會把ondraw覆蓋。void cmfcguideview::
ondraw
(cdc* pdc)
少年行新豐美酒鬥十千,咸陽遊俠多少年。 相逢意氣為君飲,繫馬高樓垂柳邊。
漢家君臣歡宴終,高議雲台論戰功。 天子臨軒賜侯印,將軍佩出明光宮。
出身仕漢羽林郎,初隨驃騎戰漁陽。 孰知不向邊庭苦,縱死猶聞俠骨香。
一身能臂兩雕弧,虜騎千群隻似無。 偏坐金鞍調白羽,紛紛射殺五單于。
MFC 使用MFC建立視窗
標頭檔案 mfc是乙個封裝了windowsapi且物件導向的c 類庫,同時也是乙個應用程式的框架結構。另外,並非所有mfc提供的函式都是類的成員,mfc也以 全域性函式的形式,為使用者提供了各類字首為afx的函式,可供使用者在必要時隨時隨地進行呼叫。由mfc建立的應用,我們不能夠直接看到其程式的入口...
MFC視窗建立過程
本文針對單文件模式的mfc程式進行分析。一步步說明,如何建立視窗並顯示。首先我們建立乙個單文件的mfc程式 test。csingledoctemplate pdoctemplate pdoctemplate new csingledoctemplate idr mainframe,runtime c...
MFC視窗的建立
新建乙個空的win32 project 我的編譯器版本vs2013 在新增項中選擇空專案 工程建立完成後,在標頭檔案與原始檔的資料夾中分別新增乙個乙個.h檔案與.cpp檔案起名為mfc.h與mfc.cpp 自擬 在標頭檔案中分別建立應用程式類與視窗架構類,如下 include mfc標頭檔案 cla...