查了網上的資料,有比較全面的,但有一個問題就是容易出現一個文字和框子不符合的現象。(仔細看,藍色字母和背景的灰色有空白)
要消除這個空白,很簡單,就是加上m_brush.CreateSolidBrush(RGB(240,240,240));這句話,在構造函數裡。其中RGB設置為和背景一樣的銀灰色。
CPP文件中的語句:
代碼如下:
HBRUSH 類名::OnCtlColor(CDC* pDC, CWnd* pWnd, UINT nCtlColor)
{
HBRUSH hbr = CFormView::OnCtlColor(pDC, pWnd, nCtlColor); //明明沒用,但沒有它也不行,很奇怪!
if (pWnd->GetDlgCtrlID()==IDC_STATIC_×××)
{
pDC->SetTextColor(RGB(0,0,255)); //藍色字體
pDC->SelectObject(&m_font); //設置已設置的字體
}
return m_brush;
}
結果: