Background Color w MDI

0

Witam wszystkich

Czy ktoś mógłby mi pomóc i napisać jak zmienić kolor tła w oknach aplikacji MDI ? Standardowo jest białe tło , a ja chcąc mieć czarne muszę za każdym razem malować czarny prostokąt w OnDraw, co skutkuje pięknym migotaniem ekranu w czasie zmiany wielkości okna .
Znalazlem na necie opis żeby wrzucić w funkcję OnEraseBackground takie coś :

CBrush brNew(RGB(0,0,0));  //Creates a blue brush
CBrush* pOldBrush = (CBrush*)pDC->SelectObject(&brNew);

CRect rc;
pDC->GetClipBox(rc); // Gets the co-ordinates of the client
// area to repaint.
pDC->PatBlt(0,0,rc.Width(),rc.Height(),PATCOPY);
// Repaints client area with current brush.
pDC->SelectObject(pOldBrush);

return TRUE;    // Prevents the execution of return

Dziala to calkiem fajnie i ekran przy rozciąganiu nie migocze ale jeżeli okno zostanie zakryte przez inne okno (z tej aplikacji ) to wygląda później fatalnie - nie jest odświeżane - czy ktoś wie jak sobie z tym poradzic ? Pozdrawiam

Tomek

0

Przy konieczności odmalowania okna wysyłany jesy do niego komunikat WM_PAINT

0

kurcze, nie liczy sie , to bylo za proste :)))

Wielkie dzieki !!!!

1 użytkowników online, w tym zalogowanych: 0, gości: 1