Re[3]: Виден фон у битмапок в меню и тулбаре. Как пофиксить?
От: Checkist82  
Дата: 19.12.06 11:58
Оценка:
Здравствуйте, Alex_PS, Вы писали:


A_P>А есть пример кода? Или хоты бы ссылка на описание похожей проблемы и методов ее устранения.


когда надо было ляпнуть бмп с закруглёнными углами на кнопку, делал так в OnDrawItem:
CBitmap bm, bm1;
bm.LoadBitmap(IDB_BUTTONUP1); // нужная бмп
bm1.LoadBitmap(IDB_FON); // маска, чёрным цветом отмечены области, кот. д.б. прозрачными
CDC m_memDC;
m_memDC.CreateCompatibleDC(pDC); //совместимый контескт
CBitmap *old_bmp;
old_bmp = (CBitmap*)SelectObject(m_memDC,bm); // устанавливаем фон на контекст
// лепим маску, что бы "запрозрачить" ненужные области
pDC->MaskBlt(0,0,40,40,&m_memDC,0,0,bm1,0,0,(DWORD)((( (SRCCOPY) << 8) & 0xFF000000) | MERGEPAINT)));
SelectObject(m_memDC,old_bmp); // восстанавливаем
Железной рукой загоним человечество в счастье.
 
Подождите ...
Wait...
Пока на собственное сообщение не было ответов, его можно удалить.