Обрабатывая сообщения WM_CTLCOLORSTATIC, WM_CTLCOLOREDIT можно изменять цвет шрифта и фона для статиков и едитов. А как изменить фон меню приложения ?
Здравствуйте, PavelT100, Вы писали:
PT>Обрабатывая сообщения WM_CTLCOLORSTATIC, WM_CTLCOLOREDIT можно изменять цвет шрифта и фона для статиков и едитов. А как изменить фон меню приложения ?
тутАвтор: IvEv
Дата: 09.04.04
Один из самых обычных и ведущих к самым большим бедствиям соблазнов есть соблазн словами: "Все так делают".
Лев Толстой
Здравствуйте, PavelT100, Вы писали:
PT>Обрабатывая сообщения WM_CTLCOLORSTATIC, WM_CTLCOLOREDIT можно изменять цвет шрифта и фона для статиков и едитов. А как изменить фон меню приложения ?
Вариант 1. Смотреть BOOL SetMenuInfo(HMENU hmenu,LPCMENUINFO lpcmi);
С ее помощью можно установить бэкграунд бруш для данного меню.
Не работает для NT4/95.
Вариант 2. Юзать BOOL GetMenuItemInfo(HMENU hMenu,UINT uItem,BOOL fByPosition,LPMENUITEMINFO lpmii);
Можно задать в lpmii->fType = MFT_OWNERDRAW и заимлементить обработчики WM_DRAWITEM/WM_MEASUREITEM. Этот способ покатит даже для NT4/95.
Вариант 3. Для "тотальной" скиновки всего меню, в т.ч. неклиентских областей идем на
http://www.codeproject.com/menu/skinmenu.asp и читаем