2014-11-02 62 views
0

我學習MFC對話框的應用程序,並作爲第一次嘗試,我做了教程explained here錯誤在對話框的MFC應用程序

我使用Visual Studio 2010,但是當我運行此我得到的錯誤爲
error C2664: 'DDX_Control' : cannot convert parameter 3 from 'CString' to 'CWnd &' 1>\documents\visual studio 2010\projects\mfc\mfc\mfcdlg.cpp(75): error C2065: 'IDC_BUTTON1' : undeclared identifier 1>\documents\visual studio 2010\projects\mfc\mfc\mfcdlg.cpp(75): error C2065: 'IDC_BUTTON1' : undeclared identifier 1>\documents\visual studio 2010\projects\mfc\mfc\mfcdlg.cpp(76): error C2065: 'IDC_COMBO1' : undeclared identifier 1>\documents\visual studio 2010\projects\mfc\mfc\mfcdlg.cpp(76): error C2065: 'IDC_COMBO1' : undeclared identifier 1>

我完全按照說明中提到的那樣做。

void CMFCDlg::DoDataExchange(CDataExchange* pDX) 
{ 
    CDialogEx::DoDataExchange(pDX); 
    DDX_Text(pDX, IDC_FIRSTNAME, m_strFirstName); 
    DDX_Text(pDX, IDC_LASTNAME, m_strLastName); 
    DDX_Control(pDX, IDC_TITLE, m_strTiltle); 
    DDX_LBString(pDX, IDC_NAMELIST, m_strFullName); 
    DDX_Control(pDX, IDC_NAMELIST, m_NameList); 
} 

因爲這是我第一次做MFC應用程序中任何事情我不知道該怎麼去wrong.Can有人請幫助我瞭解什麼是錯的?

+0

由於您是mfc和C++的新手,您可以查看msdn有關您找到的錯誤的更多信息,您可以查看這些鏈接http://msdn.microsoft.com/en-us/library/vstudio/s5b150wd(v = vs.100).aspx http://msdn.microsoft.com/en-us/library/vstudio/ewcf0002(v=vs.100).aspx有關您的錯誤的更多信息 – Robson 2014-11-03 11:45:05

+0

您應該向我們展示變量的聲明你作爲DDX_函數的第三個參數傳遞。 – sergiol 2015-07-23 22:42:34

+0

您是否根據表2重新命名了控件?如果是,請將mfcdlg.cpp更改爲當前控件ID,以便您擺脫「未聲明的標識符」錯誤。 – sergiol 2015-07-23 22:57:27

回答

2

m_strTitleCString類型的值,在您的代碼中m_strTitle被定義爲控件。其餘的,你可能會重命名或刪除標識符,使用適當的。

2

我不是很確定你正確地遵循本教程中的步驟,如果你有你不應該得到這些錯誤......

C2664錯誤:變化DDX_Control(pDX, IDC_TITLE, m_strTiltle);DDX_Text(pDX, IDC_TITLE, m_strTiltle);

C2065錯誤:本教程不包含IDC_BUTTON1/IDC_COMBO1,它提到了IDC_ADD按鈕和一個IDC_TITLE組合框。