在 Win32 API 中,TBREPLACEBITMAP 结构用于替换工具条(Toolbar)中的位图。这个结构在 Commctrl.h 头文件中定义。以下是 TBREPLACEBITMAP 结构的定义:
typedef struct {
    HINSTANCE hInst;
    UINT      nIDOld;
    HINSTANCE hInstNew;
    UINT      nIDNew;
    UINT      nButtons;
} TBREPLACEBITMAP, *LPTBREPLACEBITMAP;

  •  hInst: 包含旧位图资源的模块实例的句柄,通常是主程序的实例句柄。


  •  nIDOld: 旧位图资源的资源标识符(ID)。


  •  hInstNew: 包含新位图资源的模块实例的句柄,通常是主程序的实例句柄。


  •  nIDNew: 新位图资源的资源标识符(ID)。


  •  nButtons: 工具条中的按钮数量。


这个结构体通常用于 TB_REPLACEBITMAP 消息,通过该消息向工具条控件中替换位图。例如:
TBREPLACEBITMAP tbReplace;
tbReplace.hInst = hInstance;
tbReplace.nIDOld = IDB_OLD_BITMAP;
tbReplace.hInstNew = hInstance;
tbReplace.nIDNew = IDB_NEW_BITMAP;
tbReplace.nButtons = 3;

SendMessage(hwndToolbar, TB_REPLACEBITMAP, (WPARAM)&tbReplace, 0);

在上述代码中,hwndToolbar 是工具条控件的句柄,通过 TB_REPLACEBITMAP 消息将工具条中的旧位图替换为新位图。


转载请注明出处:http://www.zyzy.cn/article/detail/24980/Win32 API/Commctrl.h/TBREPLACEBITMAP