Wpis z mikrobloga

#programowanie #winapi #windows #gdi #wingdi Mireczki czy takie użcie jest poprawne? Chodzi o to że w moim okienku głownym mam kilka okienek, i każde z nich ma swoją zawartość (podgąd textury).. Dla mnie to działa ok, ale usłyszałem, że BeginPaint i EndPaint tylko raz powinno być w WMPAINT: to jak to inaczej zrobić?

case WM_PAINT:
{
PAINTSTRUCT ps;
HDC hdc = BeginPaint(_hwnd, &ps);
EndPaint(_hwnd, &ps);

// display input texture
PAINTSTRUCT ps_texture;
HDC hdc_texture = BeginPaint(GetDlgItem(_hwnd, IDS_DC_TEXTURE), &ps_texture);

HDC hdc_tmp = CreateCompatibleDC(hdc_texture);
SelectObject(hdc_tmp, cnv_hbm_texture);

BitBlt(hdc_texture, 0, 0, 508, 256, hdc_tmp, 0, 0, SRCCOPY);

DeleteDC(hdc_tmp);
DeleteObject(cnv_hbm_texture);

EndPaint(GetDlgItem(_hwnd, IDS_DC_TEXTURE), &ps_texture);
}
  • 3
  • Odpowiedz
  • Otrzymuj powiadomienia
    o nowych komentarzach