Я пытаюсь создать панель инструментов в C ++, используя Win32 API (без MFC или VC ++). Я могу создать панель инструментов, которая выглядит следующим образом и не имеет фона, только основной цвет окна.
Я бы хотел, чтобы это выглядело как на картинке ниже с глянцевой полосой и серым градиентом
Я пытался использовать TBSTYLE_FLAT
, когда я получил неопределенную ошибку, я объявил ее равной 0x0800
, которая все равно не имела никакого значения. Мне нужно добавить больше свойств? Я вставлю свой код ниже.
HWND hTbar = CreateWindowEx(0, TOOLBARCLASSNAME, NULL, WS_CHILD | WS_VISIBLE, 0, 0, 0, 0, hwnd, (HMENU)12, GetModuleHandle(NULL), NULL);
SendMessage(hTbar, TB_BUTTONSTRUCTSIZE, (WPARAM)sizeof(TBBUTTON), 0);
TBBUTTON tb[5];
TBADDBITMAP tBmp;
tBmp.hInst = HINST_COMMCTRL;
tBmp.nID = IDB_STD_SMALL_COLOR;
SendMessage(hTbar, TB_ADDBITMAP, 0, (LPARAM)&tBmp);
ZeroMemory(tb, sizeof(tb));
tb[0].iBitmap = STD_FILEOPEN;
tb[0].fsState = TBSTATE_ENABLED;
tb[0].fsStyle = TBSTYLE_BUTTON;
SendMessage(hTbar, TB_ADDBUTTONS, sizeof(tb)/sizeof(TBBUTTON), (LPARAM)&tb);
Я использую Windows 7 и Win32 C ++ API. Спасибо.