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句语句颠倒放置,又会产生不断刷新的问题