关于CFont类型成员变量m_font 在使用m_font.CreatePointFont时出现ASSERT(m_hObject == NULL)断言
2013-01-10 15:06
579 查看
背景:
楼主在做项目时,
1、一个对话框类A用到了CFont类型的成员变量m_font,
2、在对话框类A的OnInitDialog()成员函数里用到m_font.CreatePointFont(160, _T("华文彩云"))和GetDlgItem(IDC_XXX)->SetFont(&m_font),
3、对话框类A的析构函数有m_font.DeleteObject()。
出现的问题:
点击主界面的某个按钮时生成对话框类A的模态对话框,第一次点击该按钮时不会出现问题,第二次点击该按钮时就会出现ASSERT(m_hObject == NULL)断言。
解决方法:
把m_font.CreatePointFont(160, _T("华文彩云"))挪到对话框类A的构造函数里,其它的代码不变。这样第二次点击按钮时可以成功的生成模态对话框。
楼主在做项目时,
1、一个对话框类A用到了CFont类型的成员变量m_font,
2、在对话框类A的OnInitDialog()成员函数里用到m_font.CreatePointFont(160, _T("华文彩云"))和GetDlgItem(IDC_XXX)->SetFont(&m_font),
3、对话框类A的析构函数有m_font.DeleteObject()。
出现的问题:
点击主界面的某个按钮时生成对话框类A的模态对话框,第一次点击该按钮时不会出现问题,第二次点击该按钮时就会出现ASSERT(m_hObject == NULL)断言。
解决方法:
把m_font.CreatePointFont(160, _T("华文彩云"))挪到对话框类A的构造函数里,其它的代码不变。这样第二次点击按钮时可以成功的生成模态对话框。
相关文章推荐
- 关于threadLocal的使用中出现NullPointException的解决方案
- Spring的bean中直接调用成员变量出现nullpointexception的解决方法
- 关于DockControlBar()时调试出现ASSERT(pBar->m_pDockContext != NULL);错误处
- 关于JSON转换为对象时出现的:数据协定类型 “***”无法反序列化,因为未找到必需的数据成员 **(字段名)
- 关于ASSERT(断言)使用的规则--摘自《高质量C/C++编程指南》
- 解决GetDlgItem 使用时出现ASSERT(::IsWindow(m_hWnd))断言
- 为什么在C++使用pthread_create()的时候,类成员函数做线程的处理函数必须要定义成static类型的?
- Spring 使用注解注入,调用类实例出现 java.lang.NullPointException 问题的解决方法
- 关于使用新版本的BufferKnife出现NullPointerException的问题
- 关于ASSERT(断言)使用的规则--摘自《高质量C/C++编程指南》(转载)
- GetDlgItem使用时出现ASSERT断言或报错
- Android 自定义Dialog时出现成员变量为null的问题
- mfc中关于画图操作而导致ASSERT(m_hObject == NULL);中断问题
- 关于mentohust认证中出现“不允许使用的客户端类型”问题方案
- 关于引用类型的成员变量
- 关于ASSERT(断言)使用的规则--摘自《高质量C/C++编程指南》
- 关于如何使用反射声明一个泛型类型变量(泛型参数是动态的)的问题
- 关于空指针类型的类变量的成员函数访问的问题
- 值类型局部变量必须先初始化才能使用,值类型成员变量可以不初始化。
- Android中使用ViewGroup.removeViews()时出现NullPointException解决方案