Проблема в том, что текст сдвигается вправо по странному закону.
Делаю так:
hWndToolbar = CreateToolbarEx(
hDlg,
TBSTYLE_FLAT | WS_CHILD | WS_VISIBLE | TBSTYLE_LIST,
ID_TOOLBAR,
16, hInst, IDB_BITMAP3,
(LPCTBBUTTON)&tbButtons, NUMBUTTONS, 72,16,16,16,
sizeof(TBBUTTON)
);
В результате, вместо того чтобы нарисовать одну иконку (16х16) и сразу за ней текст, рисуется <иконок, сколько влезет> + <первая буква текста и многоточие>, независимо от ширины кнопок и указанных размеров иконок...
Тот же эффект наблюдается в случае отсутствия иконок, т.е. hInst=IDB_BITMAP3=0 (вместо них пропуск).
Однако, если загрузить иконки из ресурсов comctl32.dll, то всё работает как нужно:
hWndToolbar = CreateToolbarEx(
hDlg,
TBSTYLE_FLAT | WS_CHILD | WS_VISIBLE | TBSTYLE_LIST,
ID_TOOLBAR,
16, (HINSTANCE)HINST_COMMCTRL, IDB_STD_SMALL_COLOR,
(LPCTBBUTTON)&tbButtons, NUMBUTTONS, 72,16,16,16,
sizeof(TBBUTTON)
);
Для проверки вытащил эти иконки из comctl32.dll, добавил к проекту как ресурс — тот же "глюк".