c++ - 在 OnInitDialog() 中断言失败

标签 c++ windows visual-studio-2010 mfc assertion

所以当我想运行我的程序时,我有一个“断言失败”的错误信息。我知道这意味着在某个地方应该是真的条件不是,但我不知道如何纠正它。

错误涉及以下行:

_AFXWIN_INLINE BOOL CEdit::SetReadOnly(BOOL bReadOnly)
   { ASSERT(::IsWindow(m_hind)); return (BOOL)::SendMessage(m_hWnd, EM_SETREADONLY, bReadOnly, 0L); }

所以我知道这是关于“只读”条件的,但我不知道在哪里更正它。

我是 C++ 的新手,很抱歉,如果我忘记在我的问题中添加重要信息。

提前致谢!

最佳答案

OnInitDialog 函数包含对基类函数的调用

CDialog::OnInitDialog();

将对 SetReadOnly 的调用移到该行之后。编辑控制变量仅在该行之后初始化。

关于c++ - 在 OnInitDialog() 中断言失败,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/27943247/

相关文章:

python - 使用 python 获取正在运行的 Windows 应用程序列表

c++ - 是否有真正的 64 位版本的 msvcr80.dll?如果不是,为什么不呢?

c++ - openGL 奇怪的错误?

c++ - 我可以排队删除文件吗?

windows - Windows 10 32 位 : Could not start the command 上的 Latex 错误

c++ - WCHAR 到 String,我该怎么做?

visual-studio-2010 - 命名空间 System.Web.UI 中不存在类型或命名空间名称 UpdatePanel

c++ - 将表单数据直接插入到 PugiXML 文档中

c++ - Qt moveToThread,带参数的信号/槽

c++ - 在结构内创建绑定(bind)到 io_service 的线程