关于创建CBitmapButton 按钮出现的问题
调试环境
在Debug X64下进行调试
关于问题的描述
问题代码
m_leaMode.Create(L"leaMode", WS_VISIBLE | WS_TABSTOP | BS_OWNERDRAW, CRect(143, 20, 323, 80), this, IDC_LEA);
m_leaMode.SubclassDlgItem(IDC_LEA, this);
产生的错误如下
解决
通过分段屏蔽测试,发现 上面的代码出现问题
正常运行后的代码
m_leaMode.Create(L"leaMode", WS_VISIBLE | WS_TABSTOP | BS_OWNERDRAW, CRect(143, 20, 323, 80), this, IDC_LEA);
m_leaMode.SubclassDlgItem(IDC_LEA, GetDlgItem(IDC_LEA));
总结
由于对函数的错误使用,使得引发Assert中断 ,当然通过此错误,我也学会了如何使用此函数,在Release版本下这种中断直接跳过了,没有发生,程序正常运行,但是在Debug 下就产生了中断,而且从我提供的图三,也能看出是m_hwnd 句柄出了问题。
但是可以说明,在使用一些函数时要仔细查看相关的参数。
因笔者水平有限,不足之处请不吝之处,谢谢