我正在尝试更改项目中静态文本的背景颜色。我们也使用 BCG 库。
在 h. 文件中我有
afx_msg HBRUSH CtlColor(CDC * pDC, CWnd * pWnd, UINT nCtlColor);
COLORREF m_bckNewsClr;
在 cpp 中。我有:
m_bckNewsClr = RGB(255, 255, 255);
HBRUSH CStartPage::CtlColor(CDC * pDC, CWnd * pWnd, UINT nCtlColor)
{
pWnd->GetDlgItem(IDC_STATIC_NEWS_CAPTION_1);
pDC->SetBkColor(m_bckNewsClr);
return (HBRUSH)m_Brush.GetSafeHandle();
}
在按摩地图中:
ON_WM_CTLCOLOR()
无论如何,当我放置断点时,它甚至看不到函数 CtlColor。
在这种情况下,有人知道如何更改此背景静态文本吗?
ON_WM_CTLCOLOR
需要一个名为的方法:
afx_msg HBRUSH OnCtlColor(
CDC* pDC,
CWnd* pWnd,
UINT nCtlColor
);
另请参阅 CWnd::OnCtlColor 以获取如何执行此操作的示例。
而且还 https://stackoverflow.com/a/12007350/8918119