共用方式為


CreateMappedBitmap 函式 (commctrl.h)

建立點陣圖以用於工具列。

語法

HBITMAP CreateMappedBitmap(
       HINSTANCE  hInstance,
       INT_PTR    idBitmap,
       UINT       wFlags,
  [in] LPCOLORMAP lpColorMap,
       int        iNumMaps
);

參數

hInstance

類型: HINSTANCE

使用包含位圖資源的可執行檔來處理模組實例。

idBitmap

類型: INT_PTR

位圖資源的資源標識碼。

wFlags

類型: UINT

點陣圖旗標。 此參數可以是零或下列值:

意義
CMB_MASKED
使用點陣圖作為遮罩。

[in] lpColorMap

類型: LPCOLORMAP

COLORMAP 結構的指標,其中包含對應點陣圖所需的色彩資訊。 如果此參數為 NULL,函式會使用預設色彩對應。

iNumMaps

類型: int

lpColorMap 所指向的色彩地圖數目。

傳回值

類型: HBITMAP

如果成功,則傳回位圖的句柄,否則傳回 NULL 。 若要擷取擴充的錯誤資訊,請呼叫 GetLastError

備註

函式會使用位圖資源和色彩對應資訊所指定的點陣圖數據和色彩來建立新的點陣圖。

只有色彩地圖的影像才完全支援此函式;也就是說,具有 256 或更少色彩的影像。

範例

下列範例程式代碼會從資源建立位圖,並將它對應至按鈕臉部的系統色彩,使色彩黑色顯示為透明。

DWORD backgroundColor = GetSysColor(COLOR_BTNFACE);
COLORMAP colorMap;
colorMap.from = RGB(0, 0, 0);
colorMap.to = backgroundColor;
HBITMAP hbm = CreateMappedBitmap(g_hInst, IDB_BITMAP1, 0, &colorMap, 1);

規格需求

需求
最低支援的用戶端 Windows Vista [僅限傳統型應用程式]
最低支援的伺服器 Windows Server 2003 [僅限傳統型應用程式]
目標平台 Windows
標頭 commctrl.h
程式庫 Comctl32.lib
Dll Comctl32.dll
API 集合 ext-ms-win-shell-comctl32-init-l1-1-1 (於 Windows 10 10.0.14393 版)