MFC ComBoBox控件背景色更改

x858078 2011-09-08 01:42:50
MFC ComBoBox 默认的背景色是白色,请教如何更改他的背景色!!!
...全文
1049 12 打赏 收藏 转发到动态 举报
AI 作业
写回复
用AI写文章
12 条回复
切换为时间正序
请发表友善的回复…
发表回复
yinyuan123456 2012-11-20
  • 打赏
  • 举报
回复
楼主 我也在学,怎么改的 同问啊
x858078 2011-09-08
  • 打赏
  • 举报
回复
已经解决了,感谢!!!
x858078 2011-09-08
  • 打赏
  • 举报
回复
出现这个错误!!!
x858078 2011-09-08
  • 打赏
  • 举报
回复
“CWnd::OnCtlColor” : 非静态成员函数的非法调用
我才是心翼 2011-09-08
  • 打赏
  • 举报
回复
是因为你的文字被选中以后的颜色覆盖的问题,你这个时候需要设置文字颜色以及背景颜色即可。同大猫

不过好像 单单背景色就能搞定
lgstudyvc 2011-09-08
  • 打赏
  • 举报
回复
大猫,有效!
凤矶 2011-09-08
  • 打赏
  • 举报
回复

HBRUSH CQwDlg::OnCtlColor(CDC* pDC, CWnd* pWnd, UINT nCtlColor)
{
HBRUSH hbr = CDialog::OnCtlColor(pDC, pWnd, nCtlColor);

// TODO: Change any attributes of the DC here
if(CTLCOLOR_EDIT==nCtlColor)
{
pDC-> SetTextColor(RGB(0, 0, 0));
pDC-> SetBkColor(RGB(255,0,0));
hbr = ::CreateSolidBrush(RGB(255,0,0));
}
// TODO: Return a different brush if the default is not desired
return hbr;
}

lcyw 2011-09-08
  • 打赏
  • 举报
回复
查查MSDN, 然后再想想, 然后再动手改改,,,,
x858078 2011-09-08
  • 打赏
  • 举报
回复
CComboBoxEx::GetEditCtrl

请教改如何操作!!!
凤矶 2011-09-08
  • 打赏
  • 举报
回复
ComboBox 里面嵌着一个EDIT,也要改底色才行, CComboBoxEx::GetEditCtrl取得
x858078 2011-09-08
  • 打赏
  • 举报
回复
我响应了 WM_CTLCOLOR 消息,


HBRUSH CWEComboBox::OnCtlColor(CDC* pDC,CWnd* pWnd,UINT nCtlColor)
{
HBRUSH hbr = ::CreateSolidBrush(RGB(255,0,0));
return hbr;
}


出现的情况很奇怪



求解

15,978

社区成员

发帖
与我相关
我的任务
社区描述
VC/MFC 界面
社区管理员
  • 界面
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

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