내가 자식 창 중 하나에 페인트 Direct2D의를 사용하여, 나는 DwmExtendFrameIntoClientArea()
, 윈도우 호스트 다른 자식 창을 호출하는 창을 가지고, 비트 맵 인 경우 거기에 검은 색 영역이 있고, 그 영역이 희미 해집니다. 자식 창에서 모든 내용을 지우고 WM_PAINT
에 다시 칠하고 싶습니다. 그러나 내용을 지울 수 없습니다.창 뒤에 흐림 창 내용을 삭제 (DWM)는
나는 이전의 모든 도면,하지만 투명성을 삭제하고이 자식 창 영역은 검은하게
m_pRenderTarget->Clear(D2D1::ColorF(D2D1::ColorF::Black))
사용을 취소하는 것을 시도했다.
나는 클라이언트 영역
m_pRenderTarget->DrawBitmap(m_pBkgrnd,D2D1::Rect<float> (0.f,0.f,GetWidth(),GetHeight()))
이 검은 색으로, 그이 전에 출연했던 어떤 수를 통해 단지 검은 색 막대 인 비트 맵을 그리기 위해 노력했다.
- 는
가 작동하지 않습니다 전체 자식 창을 통해 검은 영역을 그림의 오래된 GDI 방법을 시도했다.RECT rc; GetClientRect(m_hwnd, &rc); HBRUSH brush = CreateSolidBrush(RGB(0,0,0)); HDC hc=GetDC(m_hwnd); FillRect(hc, &rc, brush); ReleaseDC(m_hwnd,hc); DeleteObject(brush);
그러나 이것 중 하나를 수행하지 않고 기본 창 크기를 조정하려고하면 바로 작동합니다. 즉 이전 그림이 사라집니다.
다시 그리기 전에 API 호출이나 수동으로 창을 지우는 방법이 있습니까?