您的位置:首页 > 其它

改变控件颜色问题

2007-03-29 16:42 218 查看
改变控件颜色问题

改变控件颜色,一般都是响应一个反射的消息:ON_WM_CTLCOLOR_REFLECT (=WM_CTLCOLOR)

在不改变任何的情况下,函数如下:

HBRUSH CMyEdit::CtlColor(CDC* pDC, UINT nCtlColor)
{
// TODO: Change any attributes of the DC here

// TODO: Return a non-NULL brush if the parent's handler should not be called
return NULL;
}

如果最后返回一个NULL, 他的父类将被调用,反之则不然。

为了获得控制权,创建一个STATIC 的 CBrush 类。 m_brBackGnd;你可以在初始化,比如构建函数的时候调用:

m_brBackGnd.CreateStockObject(RGB(255,255,255));//创建一个白色背景.

而改变控件字体颜色,一般使用 pDC->SetTextColor 达到目的.
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: