1、在测试编写继承CStatic类组件时候,发现在调用调试过程中弹出一个错误,点忽略还可以继续运行。如下图:
2、dlgdata.cpp此文件是VS安装目录\Microsoft Visual Studio .NET 2003\Vc7\atlmfc\src\mfc中的文件,而出现此错误一般是所使用的组件有问题,
此项目中我直接使用了自带的CStatic(caption:TODO:在此旋转对话框控件)。再添加一个CStatic(caption:Static),结果发现这两个CStatic的ID竟然是一样的IDC_STATIC,
此时大约有结论了:应该是ID冲突(IDC_STATIC这个ID应该是默认绑定的,建议修改成别的ID名称),因此把CStatic修改为IDC_STATIC_Color,与此关联的DDX与一并修改。
1 void CdllCallDlg::DoDataExchange(CDataExchange* pDX) 2 { 3 CDialog::DoDataExchange(pDX); 4 DDX_Control(pDX,IDC_STATIC_Color,m_colorStatic); 5 }
3、编译后运行则不再报错