我正在尝试在我们的项目中更改静态文本的背景颜色。我们也使用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

关于visual-c++ - 如何在静态文本Visual Studio中更改背景颜色?,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/47286292/

10-11 15:53