日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 编程语言 > c/c++ >内容正文

c/c++

VC++ 使用BitBlt函数显示位图

發布時間:2025/4/14 c/c++ 36 豆豆
生活随笔 收集整理的這篇文章主要介紹了 VC++ 使用BitBlt函数显示位图 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

BitBlt 函數

該函數對指定的源設備環境區域中的像素進行位塊(bit_block)轉換,以傳送到目標設備環境。

原型: ?
BOOL BitBlt(
? ? HDC ?hdcDest,
? ? int ?nXDest, ?int ?nYDest, ?int ?nWidth, ?int ?nHeight,
? ? HDC ?hdcSrc,
? ? int ?nXSrc, ?int ?nYSrc,
? ? DWORD ?dwRop);

參數: ? ?
hdcDest:指向目標設備環境的句柄。
nXDest、nYDest:指定目標矩形區域左上角的X軸和Y軸邏輯坐標
nWidth、nHeight:指定源和目標矩形區域的邏輯寬度和邏輯高度。
hdcSrc:指向源設備環境的句柄。
nXSrc、nYSrc:指定源矩形區域左上角的X軸和Y軸邏輯坐標。
dwRop:指定光柵操作代碼。這些代碼將定義源矩形區域的顏色數據,如何與目標矩形區域的顏色數據組合以完成最后的顏色。下面列出了一些常見的光柵操作代碼:
?
BLACKNESS
表示使用與物理調色板的索引0相關的色彩來填充目標矩形區域,(對缺省的物理調色板而言,該顏色為黑色)。

DSTINVERT
表示使目標矩形區域顏色取反。

MERGECOPY?
表示使用布爾型AND(與)操作符將源矩形區域的顏色與特定模式組合一起。

MERGEPAINT
通過使用布爾型OR(或)操作符將源矩形區域的顏色取反后與目標矩形區域的顏色合并。

NOTSRCCOPY
將源矩形區域顏色取反,拷貝到目標矩形區域。

NOTSRCERASE
使用布爾類型的OR(或)操作符組合源和目標矩形區域的顏色值,然后將合成的顏色取反。

PATCOPY
將特定的模式拷貝到目標位圖上。

PATINVERT
通過使用布爾型XOR(異或)操作符將源和目標矩形區域內的顏色合并。

PATPAINT
通過使用布爾型OR(或)操作符將源矩形區域取反后的顏色值與特定模式的顏色合并。然后使用OR(或)操作符將該操作的結果與目標矩形區域內的顏色合并。

SRCAND
通過使用布爾型AND(與)操作符來將源和目標矩形區域內的顏色合并。

SRCCOPY
將源矩形區域直接拷貝到目標矩形區域。

SRCERASE
通過使用布爾型AND(與)操作符將目標矩形區域顏色取反后與源矩形區域的顏色值合并。

SRCINVERT
通過使用布爾型XOR(異或)操作符將源和目標矩形區域的顏色合并。

SRCPAINT
通過使用布爾型OR(或)操作符將源和目標矩形區域的顏色合并。

WHITENESS
使用與物理調色板中索引1有關的顏色填充目標矩形區域。(對于缺省物理調色板來說,這個顏色就是白色)。
?

win7, vc6;新建單文檔工程;引入一個位圖資源;出現下圖錯誤不管;

代碼;

void CWeituView::OnDraw(CDC* pDC) {CWeituDoc* pDoc = GetDocument();ASSERT_VALID(pDoc);// TODO: add draw code for native data hereCBitmap bitmap;bitmap.LoadBitmap(IDB_BITMAP1);BITMAP bt;CDC mendc;bitmap.GetBitmap(&bt);mendc.CreateCompatibleDC(NULL);mendc.SelectObject(&bitmap);pDC->BitBlt(0,0,bt.bmWidth,bt.bmHeight,&mendc,0,0,SRCCOPY); }

加載位圖效果如下;

?

總結

以上是生活随笔為你收集整理的VC++ 使用BitBlt函数显示位图的全部內容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。