SetBKColor TRANSPARENT immer Schwarz???
-
Hallo,
ich zeichne ein Bild und will darauf transparenten Text schreiben. Aber
wenn ich die Funktion SetBKColor(hdc, TRANSPARENT); aufrufe, wird
der Hintergrund immer nur Schwarz. Was mach ich Falsch??? Danke!PAINTSTRUCT ps;
HDC hdc = BeginPaint(hwnd, &ps);
HDC hdcMem = CreateCompatibleDC(hdc);BITMAP bitmap; GetObject(bmpButton, sizeof (BITMAP), &bitmap); HANDLE hOld = SelectObject(hdcMem,bmpButton); StretchBlt(hdc,0,0,60,19, hdcMem, 0,0,60,19,SRCCOPY); SelectObject(hdcMem,hOld); LOGFONT logFont = {0}; logFont.lfHeight = 14; logFont.lfWeight = FW_NORMAL; _tcscpy_s(logFont.lfFaceName, L"Arial"); HFONT font = CreateFontIndirect(&logFont); SetTextColor(hdc,RGB(0,0,0)); SetBkColor(hdc,TRANSPARENT); HFONT fOld=(HFONT)SelectObject(hdc,font); wchar_t title[20]={0}; GetWindowText(hwnd,title,20); RECT r; GetClientRect(hwnd,&r); r.top+=3; DrawText(hdc,title,-1,&r,DT_CENTER | DT_VCENTER); SelectObject(hdc,fOld); EndPaint(hwnd,&ps); DeleteObject(font); DeleteObject(fOld); DeleteDC(hdcMem); break;
-
Du benutzt die falsche Funktion - verwende SetBkMode:
SetBkMode(hdc, TRANSPARENT);
-
Supi Danke!