我在界面上删掉了一个Edit控件,然后把它的变量删了,运行之后,不行。那位高手帮帮我,谢谢!

解决方案 »

  1.   

    删调一个控件,那么要把和这个控件相关的那个变量也删掉
    比如你的控件是IDC_EDIT1其实只要在
    void CMyDlg::DoDataExchange(CDataExchange* pDX)
    {
    CDialog::DoDataExchange(pDX);
    DDX_Control(pDX, IDC_EDIT1, m_1);删了它
    }中,把那个相关的ddx删掉
    同时把这个与控件的相关联的对象m_1删掉,以及程序中所有用到m_1
    的地方都删了,因为这个m_1已经失去他的意义了
      

  2.   

    但我把控件和其变量删掉之后运行,它把 DDX_Control(pDX, IDC_EDIT1, m_1);自动覆盖掉了
      

  3.   

    CDelete_User::CDelete_User(CWnd* pParent /*=NULL*/)
    : CDialog(CDelete_User::IDD, pParent)
    {
    //{{AFX_DATA_INIT(CDelete_User)
    m_user_name = _T("");
    //}}AFX_DATA_INIT
    }
    void CDelete_User::DoDataExchange(CDataExchange* pDX)
    {
    CDialog::DoDataExchange(pDX);
    //{{AFX_DATA_MAP(CDelete_User)
    DDX_Text(pDX, IDC_EDIT1, m_user_name);
    //}}AFX_DATA_MAP
    }
    当我把edit控件删了之后,没有删掉DDX_Text(pDX, IDC_EDIT1, m_user_name);
    又加了一个combo box 控件,变量名为m_username,DDX_Text(pDX, IDC_EDIT1, m_user_name);自动就变成DDX_Control(pDX, IDC_COMBO1, m_username);运行之后不行
      

  4.   

    你要补一补MFC.找<深入浅出MFC>