关于函数OnCtlColor()改变btn按钮控件的文字颜色和背景颜色的问题

HBRUSHCLogin::OnCtlColor(CDC*pDC,CWnd*pWnd,UINTnCtlColor){HBRUSHhbr=CDialogEx::OnCtlC... HBRUSH CLogin::OnCtlColor(CDC* pDC, CWnd* pWnd, UINT nCtlColor)
{
HBRUSH hbr = CDialogEx::OnCtlColor(pDC, pWnd, nCtlColor);

if(nCtlColor==CTLCOLOR_STATIC)
{
pDC->SetTextColor(RGB(255,255,0));
pDC->SetBkColor(RGB(0,0,255));
}
///这里运行后,static控件能改变字体颜色和背景颜色。。
if(nCtlColor==CTLCOLOR_BTN)
{
pDC->SetBkMode(TRANSPARENT);//背景
pDC->SetTextColor(RGB(255,255,0));//字体颜色
}
///可是这里运行后,button按钮控件的字体颜色背景颜色不会改变,为啥呢???????

return hbr;
}
展开
 我来答
匿名用户
2015-04-22
展开全部
要改变颜色是要返回指定颜色的CBrush的handle.
所以定义一个CBrush的member data, 再返回他
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式