Справочник функций

Ваш аккаунт

Войти через: 
Забыли пароль?
Регистрация
Информацию о новых материалах можно получать и без регистрации:

Почтовая рассылка

Подписчиков: -1
Последний выпуск: 19.06.2015

Иконки в меню.

4.4K
30 ноября 2003 года
rap
18 / / 27.11.2003
Люди добрые, наверное многие знают как это делать, киньте примерчик:
Как сделать красивую менюшку с большими полноцветными иконками (менюшку на базе стандартного CMenu =)?

Иконки добавял, но высота строки не менялась, а это грустно, хотелось иконы хотя бы 32х32... Что бы строчка была высокая, слева икона, далее по центру (вертикали) и по левому краю на расстоянии от иконы на 5-10 px шел текст...=)))
239
30 ноября 2003 года
Dolonet
1.7K / / 20.05.2000
Цитата:
Originally posted by rap
Люди добрые, наверное многие знают как это делать, киньте примерчик:
Как сделать красивую менюшку с большими полноцветными иконками (менюшку на базе стандартного CMenu =)?

Иконки добавял, но высота строки не менялась, а это грустно, хотелось иконы хотя бы 32х32... Что бы строчка была высокая, слева икона, далее по центру (вертикали) и по левому краю на расстоянии от иконы на 5-10 px шел текст...=)))



Можно тогда встречный вопросик - а как ты сделал в меню простые иконки? Примерчик не можешь выложить?

4.4K
01 декабря 2003 года
rap
18 / / 27.11.2003
Закомментированный этап экспериментов:

Код:
MENUITEMINFO menuItem;

       menuItem.cbSize=sizeof(menuItem);
       /*menuItem.fMask = MIIM_DATA | MIIM_FTYPE;
       menuItem.fType = MFT_BITMAP;
       //menuItem.fState = MFS_DEFAULT;
       menuItem.hbmpItem = HBMMENU_MBAR_CLOSE;//HBMMENU_SYSTEM;
       menuItem.dwItemData = (ULONG_PTR) AfxGetApp()->LoadIcon(IDR_MAINFRAME); //LoadImage(AfxGetInstanceHandle(),(LPCTSTR) IDB_BITMAP2,IMAGE_BITMAP,0,0,LR_DEFAULTCOLOR);
       //menuItem.hbmpUnchecked = (HBITMAP) LoadImage(AfxGetInstanceHandle(),(LPCTSTR) IDB_BITMAP2,IMAGE_BITMAP,0,0,LR_DEFAULTCOLOR);
*/
       
/*     
       menuItem.fMask = MIIM_CHECKMARKS;
       menuItem.fType = MFT_STRING;
       menuItem.fState = MFS_DEFAULT;
       menuItem.hbmpChecked = (HBITMAP) LoadImage(AfxGetInstanceHandle(),(LPCTSTR) IDB_BITMAP2,IMAGE_BITMAP,0,0,LR_DEFAULTCOLOR);
       menuItem.hbmpUnchecked = (HBITMAP) LoadImage(AfxGetInstanceHandle(),(LPCTSTR) IDB_BITMAP2,IMAGE_BITMAP,0,0,LR_DEFAULTCOLOR);

       pMenu->SetMenuItemInfo(ID_TRAY_CRM,&menuItem);
*/
239
01 декабря 2003 года
Dolonet
1.7K / / 20.05.2000
Спасибо! Такой примерчик никогда не помешает %)
380
03 декабря 2003 года
Arestov
285 / / 20.09.2000
Цитата:
Originally posted by rap
Люди добрые, наверное многие знают как это делать, киньте примерчик:
Как сделать красивую менюшку с большими полноцветными иконками (менюшку на базе стандартного CMenu =)?

Иконки добавял, но высота строки не менялась, а это грустно, хотелось иконы хотя бы 32х32... Что бы строчка была высокая, слева икона, далее по центру (вертикали) и по левому краю на расстоянии от иконы на 5-10 px шел текст...=)))



обрабатывай в оконной ф-ции сообщения WM_MEASUREITEM и WM_DRAWITEM, в первом ты указываешь размеры которые занимает ВЕСЬ элемент (иконка, текст, shortcut, отступы), а обрабатывая WM_DRAWITEM ты его рисуешь
вот и вся арифметика...

4.4K
03 декабря 2003 года
rap
18 / / 27.11.2003
Цитата:
Originally posted by Arestov


обрабатывай в оконной ф-ции сообщения WM_MEASUREITEM и WM_DRAWITEM, в первом ты указываешь размеры которые занимает ВЕСЬ элемент (иконка, текст, shortcut, отступы), а обрабатывая WM_DRAWITEM ты его рисуешь
вот и вся арифметика...



Хе, хе только так низко? А повыше уровня нет? =)

Я 4 года С не видел, если не сложно - кинь примерчик, а такие вещи мне уже сложнее делать...=(

415
03 декабря 2003 года
SLA
274 / / 08.08.2003
Цитата:
Originally posted by rap
Я 4 года С не видел



Как это?
:)

4.4K
04 декабря 2003 года
rap
18 / / 27.11.2003
Цитата:
Originally posted by SLA


Как это?
:)



Ну как, как...

Со времен MSVC++ 5.0 не устанавливал и не писал ничего на С, а тут под руки "попался" .NET, да и шабашка подвалила - вот и взялся...

Вспоминать пытаюсь, успешно... Но вот такие вещи уже сложнее... Времени нет разбираться...

380
04 декабря 2003 года
Arestov
285 / / 20.09.2000
Цитата:
Originally posted by rap


Ну как, как...

Со времен MSVC++ 5.0 не устанавливал и не писал ничего на С, а тут под руки "попался" .NET, да и шабашка подвалила - вот и взялся...

Вспоминать пытаюсь, успешно... Но вот такие вещи уже сложнее... Времени нет разбираться...



если нет сил и времени разбираться с этим, то лучше забей не теряй время, а делай основную смысловую часть проекта, мишуру типа иконок в меню можно навесить и потом, я бы кинул исходник, но он у меня дома, может завтра принесу если не забуду.
проект у тебя MFC/ATL или pure API?

4.4K
04 декабря 2003 года
rap
18 / / 27.11.2003
Цитата:
Originally posted by Arestov


если нет сил и времени разбираться с этим, то лучше забей не теряй время, а делай основную смысловую часть проекта, мишуру типа иконок в меню можно навесить и потом, я бы кинул исходник, но он у меня дома, может завтра принесу если не забуду.
проект у тебя MFC/ATL или pure API?



MFC...

Естественно забил... Всегда можно сказать заказчику, что это сложно, да и незачем и убедить, что незачем...=)

Будет время, кинь исходник, лишним не будет...

Реклама на сайте | Обмен ссылками | Ссылки | Экспорт (RSS) | Контакты
Добавить статью | Добавить исходник | Добавить хостинг-провайдера | Добавить сайт в каталог