MFC類的前綴都是C開頭的 編程
H開頭的大多數是句柄 小程序
這是爲了助記,是編程讀\寫代碼的好的習慣. api
CDC中全部MFC的DC的基類.經常使用的CClientDC dc(this);就是CDC的子類(或稱派生類). 函數
CDC等設備上下分類,都含有一個類的成員變量:m_nHdc;即HDC類型的句柄. this
記住下面的一句話,會有助於你的理解. 資源
MFC的類,是在用window API語句開發出來的有必定功能的小程序.(也可稱爲類).使用它的默認方法,就是,記住它的名字與參數(能夠用筆記,代替腦記). 開發
若是將window api比作彙編語言 it
那麼MFC就至關於Basic語言. 變量
cdc是設備描述表的基類,clientDC指代客戶區的設備描述表,PaintDC只用於OnPaint()函數中 cli
CDC 到HDC 的轉化:
2007-05-09 12:04
方法一: 此方法在設備結束時不會銷燬原來的資源(即:hDC,hBitmap)
CDC *pDC = CDC::FromHandle(hDC);
CBitmap *pBitmap = CBitmap::FromHandle(hBitmap);
方法二: 此方法在設備結束時會銷燬原來的資源(即:hDC,hBitmap)
CDC dc;
dc.Attach(hDC);
CBitmap bit;
bit.Attach(hBitmap);
dc.FromHandle(hDC)產生一個dc,可是是臨時的,mfc不保證系統在何時刪除dc.
dc.Attach(hDC)是永久的,直到這個dc的生命正常結束
在結束的時候加dc.detach()也不會銷燬原來資源
CDC到HDC的轉化:
方法一:
HDC hdc;
CDC cdc;
cdc到hdc
hdc = cdc.GetSafeHdc();
hdc到cdc
cdc.Attach(hdc);
方法二:
使用成員變量m_hDC
CDC dc;
HDC hDC = dc.m_hDC