TB_ADDBUTTONS消息

将一个或多个按钮添加到工具栏。

参数

wParam

要添加的按钮数。

lParam

指向 TBBUTTON 结构的数组的指针,该数组包含有关要添加的按钮的信息。 数组中的元素数必须与 wParam 指定的按钮数相同。

返回值

如果成功,则返回 TRUE ,否则返回 FALSE

备注

如果工具栏是使用 CreateWindowEx 函数创建的,则必须在发送TB_ADDBUTTONS之前将TB_BUTTONSTRUCTSIZE消息发送到工具栏。

有关如何将位图分配给一个或多个图像列表中的工具栏按钮的讨论,请参阅 TB_SETIMAGELIST

示例

以下示例代码使用视图按钮的标准系统位图将三个按钮添加到工具栏。 TB_ADDBITMAP消息返回图像列表中第一个按钮图像的索引。 各个图像由它们与该值的偏移量标识。

TBADDBITMAP tbAddBitmap;
tbAddBitmap.hInst = HINST_COMMCTRL;
tbAddBitmap.nID = IDB_VIEW_SMALL_COLOR;

// There are 12 items in IDB_VIEW_SMALL_COLOR.  However, because this is a standard
// system-defined bitmap, the wParam (nButtons) is ignored.
//
// hWndToolbar is the handle of the toolbar window.
//
// Do not forget to send TB_BUTTONSTRUCTSIZE if the toolbar was created
// by using CreateWindowEx.
//
int stdidx = SendMessage(hWndToolbar, TB_ADDBITMAP, 0, (LPARAM)&tbAddBitmap);

// Define the buttons. 
// IDM_SETLARGEICONVIEW and so on are application-defined command IDs.

const int numButtons = 3;
TBBUTTON tbButtonsAdd[numButtons] = 
{
    {stdidx + VIEW_LARGEICONS, IDM_SETLARGEICONVIEW, TBSTATE_ENABLED, BTNS_BUTTON},
    {stdidx + VIEW_SMALLICONS, IDM_SETSMALLICONVIEW, TBSTATE_ENABLED, BTNS_BUTTON},
    {stdidx + VIEW_DETAILS, IDM_SETDETAILSVIEW, TBSTATE_ENABLED, BTNS_BUTTON}
}; 

// Add the view buttons.
SendMessage(hWndToolbar, TB_ADDBUTTONS, numButtons, (LPARAM)tbButtonsAdd);

要求

要求
最低受支持的客户端
Windows Vista [仅限桌面应用]
最低受支持的服务器
Windows Server 2003 [仅限桌面应用]
标头
Commctrl.h
Unicode 和 ANSI 名称
TB_ADDBUTTONSW (Unicode) 和 TB_ADDBUTTONSA (ANSI)

另请参阅

工具栏标准按钮图像索引值