Я пытаюсь самостоятельно отрисовывать тулбар, и возникли следующие вопросы
1) Как определить размеры кнопки со стрелкой, которая отображается при задании кнопке стиля BTNS_DROPDOWN?
Теоретически можно определить размеры кнопки туулбара и высчитать при помощи lpNMCustomDraw->rc, но — см 2
2) Если кнопки имеет стиль BTNS_SHOWTEXT, то ее размеры высчитываются на основании длтнны текста и она имеет переменную длинну.
При отрисовке я имею размеры rect'а для текста, и в принципе, получив разверы кнопки, можно высчитать и это. Но по-моему, это как-то криво. Есть ли варианты попрямее?
3) Как отрисовать (и/или получить битмапку со стрелочкой для стиля кнопки BTNS_DROPDOWN и BTNS_WHOLEDROPDOWN)? Для этого есть какие-нибудь стандартные методы?
4) Как сделать так, чтоб стрелка у битмапки была поуже? А то стандартная слишком широка, и смотриться почти как отдельная кнопка, не связанная ни с чем.
5) На BTNS_DROPDOWN я отображаю Popup меню. Как сделать так, чтобы при выведенном меню остальные кнопки хот трекились? Пробовал ловить TBN_HOTITEMCHANGE, но оно просто не приходит, когда меню отображается. Например, в студии 2003 работает так, и меню исчезает при наведении мыши на другуую кнопку. А в эксплорере нет. Значит ли это, что эксплорер использует стд возможности апи и такое не реализуемо достаточно просто, а в студии используется какой-то изврат?