UI高手留步 :为什么我的EDIT框重新写时,颜色不能重新完全覆盖?(在线等)

aetherstone 2005-08-04 03:47:28
我有一个对话框:
甲事件到来时,我输出一个提示 SetDlgItemText,然后再 OnCtlColor里
pDC->SetBkMode( OPAQUE );
pDC->SetBkColor( m_clrRemoteDBState );
static HBRUSH hbrEdit = ::CreateSolidBrush(m_clrRemoteDBState);
return hbrEdit;
重新置编辑框的颜色,可以将整个edit用相应颜色填满
乙事件到来时,同样,SetDlgItemText一个信息,不过我用另一种颜色去添edit,但只在有文字的地方改变为新颜色,其他地方颜色不变,

为什么只有第一次可以?如何改?
谢谢.



...全文
134 9 打赏 收藏 转发到动态 举报
写回复
用AI写文章
9 条回复
切换为时间正序
请发表友善的回复…
发表回复
sandy_zhang 2005-08-09
  • 打赏
  • 举报
回复
关注,我也遇到这样的问题
aetherstone 2005-08-09
  • 打赏
  • 举报
回复
我已经自己解决了,继承CEdit派生一个类,来完成这个功能,参与的都有分,分不多,别闲少。呵呵
明天结贴
province_ 2005-08-08
  • 打赏
  • 举报
回复
要使已经输入的文字背景色变化,你必须自己用TEXTOUT重新输出这段文字。
aetherstone 2005-08-08
  • 打赏
  • 举报
回复
TO kenskens :

甲乙事件是相对的,当乙事件先到是,也能划出相应的颜色,肯定在同一个作用域中,除第一次正常外,其它 “SetDlgItemText一个信息,不过我用另一种颜色去添edit,但只在有新的文字的地方改变为新颜色,其他地方颜色不变,还是第一次的颜色“


TO lixiaosan:
如何置透明色?谢谢!
ronglisheng 2005-08-08
  • 打赏
  • 举报
回复
其它地方用空格补的试试看
kenskens 2005-08-04
  • 打赏
  • 举报
回复
乙事件到来时,画刷是否还有效,在同一个作用域中吗?
lixiaosan 2005-08-04
  • 打赏
  • 举报
回复
设置透明再设置颜色试试
aetherstone 2005-08-04
  • 打赏
  • 举报
回复
不行呀
vcmute 2005-08-04
  • 打赏
  • 举报
回复
Invalidate一下Edit?

15,980

社区成员

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

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