?? vc++筆記2.txt
字號:
先看看MFC為我們提供了那些繪圖用的類。
設(shè)備環(huán)境類:
CDC類封裝了WINDOWS API中用來畫圖的函數(shù)。同時該類負(fù)責(zé)維護(hù)設(shè)備環(huán)境,設(shè)備環(huán)境是內(nèi)存中的一個對象,設(shè)備可以是屏幕或打印機(jī)。
CClientDC類用來創(chuàng)建和破壞一個設(shè)備環(huán)境,它在堆棧中建立。它的構(gòu)造函數(shù)通過調(diào)用CDC::GetDC()為窗口客戶區(qū)建立設(shè)備環(huán)境,它的析構(gòu)函數(shù)通過調(diào)用CDC::ReleaseDC()銷毀這個設(shè)備。
CWindowDC類維護(hù)窗口的非客戶區(qū),和CclientDC一樣。
CPaintDC類在構(gòu)造函數(shù)中調(diào)用CWnd::BeginPaint()獲得設(shè)備環(huán)境,以便在無效的客戶區(qū)進(jìn)行繪圖。在析構(gòu)函數(shù)中調(diào)用CWnd::EndPaint()。
CMetaFileDC類創(chuàng)建一個元文件,可以當(dāng)它是一個屏幕設(shè)備,單其實它是一個磁盤文件。產(chǎn)生的文件可以存放在磁盤中,以后還可以讀入,進(jìn)行修改。
圖形對象類:
CBitmap類建立和控制“位圖”對象。(內(nèi)存中的位圖)。
CBrush類建立和控制“刷子”對象。填充圖形的背景色,刷子。
CFont類建立與控制字體對象。
CPalette類建立和控制調(diào)色板對象。
CPen類建立和控制畫筆對象,畫筆是圖形的邊界模式。
CRgn類建立和控制GDI繪圖設(shè)備區(qū)域?qū)ο蟆?以上的幾個類共有一個基類CGdiObject .
小知識:GDI(Graphic Device Interface)圖形設(shè)備接口
那好,通過上面的了解,我們應(yīng)該有一個思路了,要想加載位圖資源可以有兩種方式,一種是將位圖導(dǎo)入到我們的資源文件中,一種直接從文件加載它。方法分別如下:
//從資源文件加載是這樣
CBitmap m_bitmap; //建立一個位圖對象
m_bitmap.DeleteObject(); //調(diào)用CGdiObject的DeleteObject函數(shù)將以前的BITMAP對象刪除。
m_bitmap.LoadBitmap(nBitmapID);//載入指定ID的圖象資源nBitmapID是資源的ID。
//從文件加載需要這樣
HBITMAP hbitmap;//建立一個位圖句柄
hbitmap =(HBITMAP)::LoadImage(NULL,”test.bmp”,IMAGE_BITMAP,0,0,LR_LOADFROMFILE);
m_bitmap.DeleteObject(); //調(diào)用CGdiObject的DeleteObject函數(shù)將以前的BITMAP對象刪除。
m_bitmap.Attach(hbitmap);//把得到的位圖句柄附到m_bitmap對象。
?? 快捷鍵說明
復(fù)制代碼
Ctrl + C
搜索代碼
Ctrl + F
全屏模式
F11
切換主題
Ctrl + Shift + D
顯示快捷鍵
?
增大字號
Ctrl + =
減小字號
Ctrl + -