自定义控件,OnPaint没有被调用
时间:2011-12-01
来源:互联网
自定义了一个控件,下面是部分代码:
控件类注册:
CMyWnd::CMyWnd()
{
WNDCLASS wls;
wls.lpszClassName = className;
wls.style = CS_OWNDC;
wls.hbrBackground = (HBRUSH)(COLOR_BACKGROUND + 1);
wls.hCursor = LoadCursor(NULL, IDC_ARROW);
wls.hIcon = NULL;
wls.hInstance = AfxGetInstanceHandle();
wls.lpfnWndProc = ::DefWindowProc;
wls.lpszMenuName = NULL;
RegisterClass(&wls);
}
创建接口:
HRESULT CMyWnd::Create(CWnd *pParent, CRect rc,UINT uID)
{
return CWnd::Create(className, m_csTitle, WS_VISIBLE| WS_CHILD, rc, pParent, uID);
}
在对话框的OnInitialDialog接口中调用Create接口创建对象:
m_myWnd.Create(this, rcClient, IDC_CUSTOM1);
另外重载了控件的OnPaint接口:
void CMyWnd::OnPaint()
{
CPaintDC dc(this); // device context for painting
CRect rc;
GetClientRect(rc);
CBrush br(RGB(0,255,0));
FillRect(dc, rc, br);
}
运行后控件并没有显示,调试后发现控件的OnPaint没有被调用。
不知道原因,难道还需要其他的地方需要处理么?
控件类注册:
CMyWnd::CMyWnd()
{
WNDCLASS wls;
wls.lpszClassName = className;
wls.style = CS_OWNDC;
wls.hbrBackground = (HBRUSH)(COLOR_BACKGROUND + 1);
wls.hCursor = LoadCursor(NULL, IDC_ARROW);
wls.hIcon = NULL;
wls.hInstance = AfxGetInstanceHandle();
wls.lpfnWndProc = ::DefWindowProc;
wls.lpszMenuName = NULL;
RegisterClass(&wls);
}
创建接口:
HRESULT CMyWnd::Create(CWnd *pParent, CRect rc,UINT uID)
{
return CWnd::Create(className, m_csTitle, WS_VISIBLE| WS_CHILD, rc, pParent, uID);
}
在对话框的OnInitialDialog接口中调用Create接口创建对象:
m_myWnd.Create(this, rcClient, IDC_CUSTOM1);
另外重载了控件的OnPaint接口:
void CMyWnd::OnPaint()
{
CPaintDC dc(this); // device context for painting
CRect rc;
GetClientRect(rc);
CBrush br(RGB(0,255,0));
FillRect(dc, rc, br);
}
运行后控件并没有显示,调试后发现控件的OnPaint没有被调用。
不知道原因,难道还需要其他的地方需要处理么?
作者: fendouzhe 发布时间: 2011-12-01
wndcls.style = CS_DBLCLKS| CS_HREDRAW | CS_VREDRAW;
作者: shen_wei 发布时间: 2011-12-01
相关阅读 更多
热门阅读
-
office 2019专业增强版最新2021版激活秘钥/序列号/激活码推荐 附激活工具
阅读:74
-
如何安装mysql8.0
阅读:31
-
Word快速设置标题样式步骤详解
阅读:28
-
20+道必知必会的Vue面试题(附答案解析)
阅读:37
-
HTML如何制作表单
阅读:22
-
百词斩可以改天数吗?当然可以,4个步骤轻松修改天数!
阅读:31
-
ET文件格式和XLS格式文件之间如何转化?
阅读:24
-
react和vue的区别及优缺点是什么
阅读:121
-
支付宝人脸识别如何关闭?
阅读:21
-
腾讯微云怎么修改照片或视频备份路径?
阅读:28