Как изменить фон меню ?
От: PavelT100 Россия  
Дата: 09.04.04 07:01
Оценка:
Обрабатывая сообщения WM_CTLCOLORSTATIC, WM_CTLCOLOREDIT можно изменять цвет шрифта и фона для статиков и едитов. А как изменить фон меню приложения ?
Re: Как изменить фон меню ?
От: IvEv  
Дата: 09.04.04 07:09
Оценка:
Здравствуйте, PavelT100, Вы писали:

PT>Обрабатывая сообщения WM_CTLCOLORSTATIC, WM_CTLCOLOREDIT можно изменять цвет шрифта и фона для статиков и едитов. А как изменить фон меню приложения ?

тут
Автор: IvEv
Дата: 09.04.04
Один из самых обычных и ведущих к самым большим бедствиям соблазнов есть соблазн словами: "Все так делают".
Лев Толстой
Re: Как изменить фон меню ?
От: BlackSpy  
Дата: 09.04.04 07:41
Оценка:
Здравствуйте, 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 и читаем
 
Подождите ...
Wait...
Пока на собственное сообщение не было ответов, его можно удалить.