我使用下面的重載方法將文本顏色更改爲列表框中的Visual C++ MFC基於對話框的應用程序中的紅色。當我以DEBUG模式構建程序時,它完美地工作。但是當我使用RELEASE模式時,文字顏色不會改變。爲什麼是這個,我該如何克服這個問題?OnCtrlColor不工作?
謝謝!
HBRUSH MyDlg::OnCtlColor(CDC* pDC, CWnd* pWnd, UINT nCtlColor)
{
if(nCtlColor == CTLCOLOR_LISTBOX)
{
if(bChangeTextColor)
{
pDC->SetTextColor(RGB(255, 0, 0));
return m_hRedBrush;
}
}
return CDialog::OnCtlColor(pDC, pWnd, nCtlColor);
}
是在m_hRedBrush在Debug和Release建立正確初始化? – sharptooth 2010-04-06 11:25:27
是的,我也檢查過。但問題仍然存在:( – Isuru 2010-04-07 03:31:37
@Isuru你是否曾經因此而來,因爲我也有這個問題? – 2013-08-30 05:54:24