doubt in handling OnNcPaint( )

Light Poster
21Jan2010,19:04   #1
palz's Avatar
i have tied to a rectangle in caption bar of window but this doesn't work .am i doing any mistake.plz correct me .

Code: MFC
void CMainWnd::OnNcPaint( )
{
    CDC dc = (CDC)GetWindowDC();
    RECT rectMine = {30,3,100,20};
    FillRect(dc, &rectMine, (HBRUSH)GetStockObject(DKGRAY_BRUSH));
    SetBkMode(dc, TRANSPARENT);
SetTextColor(dc, RGB(255, 0,0));
   DrawText(dc, "My Dialog", strlen("My Dialog"), &rectMine, 0);
  ReleaseDC(dc);
}
Contributor
21Jan2010,19:42   #2
Gene Poole's Avatar
Your mixing the CDC class with HDC handles and that won't work by forcing casts. Try replacing your first line with:

Code:
  HDC dc = GetWindowDC()->m_hDC;
and your last line with this:
Code:
  ::ReleaseDC(m_hWnd,dc);

Last edited by Gene Poole; 21Jan2010 at 19:44..
Light Poster
21Jan2010,23:46   #3
palz's Avatar
thank u .its working.