一般要改变MFC控件的背景颜色,都会响应消息ON_WM_ERASEBKGND 和ON_WM_CTLCOLOR。但在Edit控件里,应响应ON_WM_ERASEBKGND 和ON_WM_CTLCOLOR_REFLECT。
在构造函数里创建 画刷
- CMyEdit::CMyEdit()
- {
- m_hBrush = CreateSolidBrush(RGB(255, 255, 255)) ;
- }
实现消息 ON_WM_ERASEBKGND
- BOOL CMyEdit::OnEraseBkgnd(CDC* pDC)
- {
- // TODO: Add your message handler code here and/or call default
- CEdit::OnEraseBkgnd(pDC);

本文介绍如何改变MFC CEdit控件的背景颜色,关键在于响应ON_WM_ERASEBKGND和ON_WM_CTLCOLOR_REFLECT消息。在控件构造函数中创建画刷,并在消息处理函数中应用,以实现背景颜色的定制。
最低0.47元/天 解锁文章
4965





