CreateDIBSection

此頁沒有內(nèi)容條目
內(nèi)容

CreateDIBSection

VB聲明

Declare Function CreateDIBSection Lib "gdi32" Alias "CreateDIBSection" (ByVal hDC As Long, pBitmapInfo As BITMAPINFO, ByVal un As Long, ByVal lplpVoid As Long, ByVal handle As Long, ByVal dw As Long) As Long

說明

創(chuàng)建一個(gè)DIBSection。這是一個(gè)GDI對(duì)象,可象一幅與設(shè)備有關(guān)位圖那樣使用。但是,它在內(nèi)部作為一幅與設(shè)備無關(guān)位圖保存

返回值

Long,執(zhí)行成功返回DIBSection位圖的句柄,零表示失敗。會(huì)設(shè)置GetLastError

參數(shù)表

參數(shù)

類型及說明

hDC

Long,一個(gè)設(shè)備場景的句柄。如dw設(shè)為DIB_PAL_COLORS,那么DIB顏色表就會(huì)用來自邏輯調(diào)色板的顏色進(jìn)行初始化

pBitmapInfo

BITMAPINFO,這個(gè)結(jié)構(gòu)初始化成欲創(chuàng)建的那幅位圖的配置數(shù)據(jù)

un

Long,下述常數(shù)之一:

DIB_PAL_COLORS

BITMAPINFO包含了一個(gè)16位調(diào)色板索引的數(shù)組

DIB_RGB_COLORS

BITMAPINFO包含了一個(gè)顏色表,其中保存有32位顏色(RGBQUAD)

lplpVoid

Long,用于載入DIBSection數(shù)據(jù)區(qū)的內(nèi)存地址

handle

Long,指向一個(gè)文件映射對(duì)象的可選句柄,位圖將在其中創(chuàng)建。如設(shè)為零,Windows會(huì)自動(dòng)分配內(nèi)存

dw

Long,如指定了句柄,就用這個(gè)參數(shù)指定位圖數(shù)據(jù)在文件映射對(duì)象中的偏移量

注解

一旦不再需要,記住用DeleteObject函數(shù)刪除DIBSection位圖

如Windows分配了一個(gè)內(nèi)存緩沖區(qū),那么對(duì)象刪除以后,緩沖區(qū)也會(huì)自動(dòng)刪除。如指定了一個(gè)文件映射對(duì)象,則不會(huì)自動(dòng)將其清除

在直接訪問DIB內(nèi)存之前,首先必須保證Windows已完成了繪圖(記住,Windows可能對(duì)繪圖操作進(jìn)行了排列處理)。通過調(diào)用gdiFlush函數(shù),可確保完成所有未決的繪圖操作

Top