Заглянул тут на vbAccelerator и сильно пожалел что давно туда не заходил - этой весной появилась куча модных контролов для того что делал сам, "руками" и круто обновились старые.
Так контрол vbAccelerator IconMenu DLL http://www.vbaccelerator.com/home/VB/Co ... rticle.asp делающий иконки в меню теперь поддерживает стиль XP, но, дело в том, что цвета в меню XP-го стиля (полоска справа, фон меню, рамочка и цвет выделения) хитрым образом рассчитываются на основе системного цвета рельефных объектов и системного цвета выделенного пунка меню. Причем зависимость эта нелинейная - например при стандартных цветах полоска справа получается увеличением на 10 каждой RGB-компоненты цвета рельефных объектов, при др. цветах - каждая компонента осветляется по своему.
Компонент IconMenu DLL же более-менее правильно рассчитывает только цвет выделения, посему хотелось бы знать функции для рассчета цветов в XP-ой менюхе. Или хоть ссылочку на аглицком и с CPP-кодом.
Кстати, все это не блажь - например XP-я менюха в WinAce, как показало исследование в Фотошопе ошибается относительно нативной XP-ой менюхи по цветам всего лишь на 1-ку по одному из RGB-компонентов, но круто врет в краевых ситуациях (белый цвет и т.п.)
P.S.
Млин, вот народ на западе грамотно контролы пишет! До этого, ругаясь (но икноки сильно нужны были), пользовался компонентом Антона Лесниченко MenuX - глючный как хрен знает что, реакции на замечания о багах - 0, приемственности между версиями никакой и даже офиц. сайта нету. А тут... - великолепно работает и под NT4, не мешает использовать VB-ые методы работы с меню и легко интегрируется в готовый проект, все ОК и с MDI-формами!