创建一个非模式对话框:
g_pQueryPixelDlg = new CQueryPixelDlg;
g_pQueryPixelDlg->Create(IDD_QUERYPIXELDLG,clientControl);
g_pQueryPixelDlg->m_pQueryPixelCtrl = g_pQueryPixelCtrl;
g_pQueryPixelDlg->ShowWindow(SW_SHOW);
编译时居然出现:
error C2664: “BOOL CDialog::Create(LPCTSTR,CWnd *)”: 不能将参数 1 从“int
”转换为“LPCTSTR”
1> 从整型转换为指针类型要求 reinterpret_cast、C 样式转换或函数样式转
换
我记得CDialog::Create函数有两个:
virtual BOOL Create(LPCTSTR lpszTemplateName, CWnd* pParentWnd =
NULL);
virtual BOOL Create(UINT nIDTemplate, CWnd* pParentWnd = NULL);
怎么就不能调用第二个呢?
我开始以为是使用多字节字符集的缘故,后来改用Unicode 字符集,还是这个错误
g_pQueryPixelDlg = new CQueryPixelDlg;
g_pQueryPixelDlg->Create(IDD_QUERYPIXELDLG,clientControl);
g_pQueryPixelDlg->m_pQueryPixelCtrl = g_pQueryPixelCtrl;
g_pQueryPixelDlg->ShowWindow(SW_SHOW);
编译时居然出现:
error C2664: “BOOL CDialog::Create(LPCTSTR,CWnd *)”: 不能将参数 1 从“int
”转换为“LPCTSTR”
1> 从整型转换为指针类型要求 reinterpret_cast、C 样式转换或函数样式转
换
我记得CDialog::Create函数有两个:
virtual BOOL Create(LPCTSTR lpszTemplateName, CWnd* pParentWnd =
NULL);
virtual BOOL Create(UINT nIDTemplate, CWnd* pParentWnd = NULL);
怎么就不能调用第二个呢?
我开始以为是使用多字节字符集的缘故,后来改用Unicode 字符集,还是这个错误
。这是怎么回
原来是第二个参数有问题,改成这样就好了:
g_pQueryPixelDlg->Create(IDD_QUERYPIXELDLG,clientControl->GetScreenWnd());