MFC对话框初始化
RT:
代码如下:
- C/C++ code
BOOL CInquireDlg::OnInitDialog(){ CDialog::OnInitDialog(); //就是在这里有错误~~~~很纠结~~~ // TODO: 在此添加额外的初始化 //读取信息 CFile file(_T("D:\\data.txt"),CFile::modeRead); CArchive ar(&file,CArchive::load); ar>>Number; CTrainInfo *Train; for (int i=0 ; i<Number ;i++) { ar>>Train; ((CComboBox *)GetDlgItem(IDC_INQUIRE_TRAINTRIP))->AddString((LPCTSTR)Train->m_strTrainTrips);//向组合框添加列车车次 m_ObArray.Add(Train);//想CObArray对象指针中添加元素 } ar.Close(); file.Close(); return TRUE; // return TRUE unless you set the focus to a control // 异常: OCX 属性页应返回 FALSE}单步跟踪到dlgcore.cpp文件中。。。。
- C/C++ code
BOOL CDialog::OnInitDialog(){ // execute dialog RT_DLGINIT resource BOOL bDlgInit; if (m_lpDialogInit != NULL) //这里就有错误 bDlgInit = ExecuteDlgInit(m_lpDialogInit); else bDlgInit = ExecuteDlgInit(m_lpszTemplateName); if (!bDlgInit) { TRACE(traceAppMsg, 0, "Warning: ExecuteDlgInit failed during dialog init.\n");//弹出这个对话框 EndDialog(-1); return FALSE; }......}望指点~~~~
[解决办法]
应该是资源问题。你恢复到你正常的版本再一步步检查下资源的变动
[解决办法]
void* m_lpDialogInit; // DLGINIT resource data
CDialog中的成员
意思是 指着对话框资源 ,原因就是你的资源问题,你往资源这方面考虑