转:MFC静态文本与窗口背景色一致

MFC静态文本与窗口背景色一致
重写WM_CTLCOLOR :
HBRUSH CWeatherTestDlg::OnCtlColor(CDC* pDC, CWnd* pWnd, UINT nCtlColor)  
{  
HBRUSH hbr = CDialog::OnCtlColor(pDC, pWnd, nCtlColor);  
switch (pWnd->GetDlgCtrlID())  
{  
   case IDC_STATIC_WEEK:   //为静态文本框的资源ID号  
   {  
    pDC->SetBkMode(TRANSPARENT);  
    pDC->SetTextColor(RGB(0,0,0));  
    return (HBRUSH)GetStockObject(HOLLOW_BRUSH);  
    Invalidate();  
   }  
   break;  
}  
return hbr;  
} 

由于Invalidate();  在return之后,所以如果有字符显示的话,会产生叠加现象。但是把2句语句颠倒放置,又会产生不断刷新的问题

原文地址:https://www.cnblogs.com/youxin/p/2858125.html