C++ OnCtlColor中两个静态控件的问题

useready 2012-04-30 10:14:59
我在窗口中放了两个静态标签控件,分别让它们显示不同的颜色
可我在界面中不论鼠标移动到哪一个上面 两个颜色都会同时改变!!
打断点 看了一下,发现两个if语句都会执行到!!!
为什么啊?
HBRUSH CaaaaaDlg::OnCtlColor(CDC* pDC, CWnd* pWnd, UINT nCtlColor)
{
HBRUSH hbr = CDialog::OnCtlColor(pDC, pWnd, nCtlColor);
if (pWnd->GetDlgCtrlID() == IDC_STATIC1)
{
if(bBlue)
{
pDC->SetTextColor(RGB(255,0,0)); //设置初始颜色为红色
}
else
{
pDC->SetTextColor(RGB(0,0,255)); //如果鼠标在文本上,设置颜色为蓝色

}

}
if(pWnd->GetDlgCtrlID() == IDC_STATIC2)
{
if(bBlue)
{
pDC->SetTextColor(RGB(255,0,0)); //设置初始颜色为红色
}
else
{
pDC->SetTextColor(RGB(0,0,255)); //如果鼠标在文本上,设置颜色为蓝色
}

}
return hbr;
}

...全文
78 1 打赏 收藏 转发到动态 举报
写回复
用AI写文章
1 条回复
切换为时间正序
请发表友善的回复…
发表回复
e3internet 2012-05-01
  • 打赏
  • 举报
回复
贴出 CaaaaaDlg代码,原因不定

65,210

社区成员

发帖
与我相关
我的任务
社区描述
C++ 语言相关问题讨论,技术干货分享,前沿动态等
c++ 技术论坛(原bbs)
社区管理员
  • C++ 语言社区
  • encoderlee
  • paschen
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
  1. 请不要发布与C++技术无关的贴子
  2. 请不要发布与技术无关的招聘、广告的帖子
  3. 请尽可能的描述清楚你的问题,如果涉及到代码请尽可能的格式化一下

试试用AI创作助手写篇文章吧