Иконки в меню.
Как сделать красивую менюшку с большими полноцветными иконками (менюшку на базе стандартного CMenu =)?
Иконки добавял, но высота строки не менялась, а это грустно, хотелось иконы хотя бы 32х32... Что бы строчка была высокая, слева икона, далее по центру (вертикали) и по левому краю на расстоянии от иконы на 5-10 px шел текст...=)))
Люди добрые, наверное многие знают как это делать, киньте примерчик:
Как сделать красивую менюшку с большими полноцветными иконками (менюшку на базе стандартного CMenu =)?
Иконки добавял, но высота строки не менялась, а это грустно, хотелось иконы хотя бы 32х32... Что бы строчка была высокая, слева икона, далее по центру (вертикали) и по левому краю на расстоянии от иконы на 5-10 px шел текст...=)))
Можно тогда встречный вопросик - а как ты сделал в меню простые иконки? Примерчик не можешь выложить?
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);
*/
Люди добрые, наверное многие знают как это делать, киньте примерчик:
Как сделать красивую менюшку с большими полноцветными иконками (менюшку на базе стандартного CMenu =)?
Иконки добавял, но высота строки не менялась, а это грустно, хотелось иконы хотя бы 32х32... Что бы строчка была высокая, слева икона, далее по центру (вертикали) и по левому краю на расстоянии от иконы на 5-10 px шел текст...=)))
обрабатывай в оконной ф-ции сообщения WM_MEASUREITEM и WM_DRAWITEM, в первом ты указываешь размеры которые занимает ВЕСЬ элемент (иконка, текст, shortcut, отступы), а обрабатывая WM_DRAWITEM ты его рисуешь
вот и вся арифметика...
обрабатывай в оконной ф-ции сообщения WM_MEASUREITEM и WM_DRAWITEM, в первом ты указываешь размеры которые занимает ВЕСЬ элемент (иконка, текст, shortcut, отступы), а обрабатывая WM_DRAWITEM ты его рисуешь
вот и вся арифметика...
Хе, хе только так низко? А повыше уровня нет? =)
Я 4 года С не видел, если не сложно - кинь примерчик, а такие вещи мне уже сложнее делать...=(
Я 4 года С не видел
Как это?
:)
Как это?
:)
Ну как, как...
Со времен MSVC++ 5.0 не устанавливал и не писал ничего на С, а тут под руки "попался" .NET, да и шабашка подвалила - вот и взялся...
Вспоминать пытаюсь, успешно... Но вот такие вещи уже сложнее... Времени нет разбираться...
Ну как, как...
Со времен MSVC++ 5.0 не устанавливал и не писал ничего на С, а тут под руки "попался" .NET, да и шабашка подвалила - вот и взялся...
Вспоминать пытаюсь, успешно... Но вот такие вещи уже сложнее... Времени нет разбираться...
если нет сил и времени разбираться с этим, то лучше забей не теряй время, а делай основную смысловую часть проекта, мишуру типа иконок в меню можно навесить и потом, я бы кинул исходник, но он у меня дома, может завтра принесу если не забуду.
проект у тебя MFC/ATL или pure API?
если нет сил и времени разбираться с этим, то лучше забей не теряй время, а делай основную смысловую часть проекта, мишуру типа иконок в меню можно навесить и потом, я бы кинул исходник, но он у меня дома, может завтра принесу если не забуду.
проект у тебя MFC/ATL или pure API?
MFC...
Естественно забил... Всегда можно сказать заказчику, что это сложно, да и незачем и убедить, что незачем...=)
Будет время, кинь исходник, лишним не будет...