Отрисовка текста на DC с прозрачным фоном (Vista)
От: NeyroN Россия  
Дата: 06.03.08 09:26
Оценка:
Приветствую, уважаемые!
Подскажите, кто знает.
В программе есть функция, которая выводит "транспарентный" текст поверх существующего изображения.
void MyClass::DrawTransparentText(AnsiString text,int x, int y, HDC hPaintDC)
{
RECT r;
r.left=x; r.right=x+200; r.top=y; r.bottom=y+15;
SetBkMode(hPaintDC,TRANSPARENT);
SetTextColor(hPaintDC, 0x000000FF);
DrawText(hPaintDC,text.c_str(),text.Length(),&r,DT_LEFT);
}
В Висте, если тема "Аэро" отключена, то все ОК. Тест рисуется поверх картинки как положено, без фона, а если "Аэро" включена, то текст отрисовывается с черным фоном. Пробовал после SetBkMode выставлять фон для DC на черный. Результат тот же... Если есть какие мысли, буду благодарен!
 
Подождите ...
Wait...
Пока на собственное сообщение не было ответов, его можно удалить.