我下载了一个Visual c++6.0建的工程,上面有一个对话框,我想通过类向导为对话框上的编辑框加一个成员变量m_text。但是类向导上没有这个对话框对应的类。我自己手动加了这个变量m_text,编译正确,但运行错误。请问怎么回事?卫什么类向导的class name中没有这个类名?为什么出现错误?对话框类定义代码:
class CLabelPropertyDialog : public CDiagramPropertyDlg
{// Construction
public:
CLabelPropertyDialog(CWnd* pParent = NULL); // standard constructor
~CLabelPropertyDialog(); virtual void SetValues();// Dialog Data
//{{AFX_DATA(CLabelPropertyDialog)
enum { IDD = IDD_DIALOG_PROPERTY_LABEL };
CString m_text;
//}}AFX_DATA// Overrides
// ClassWizard generated virtual function overrides
//{{AFX_VIRTUAL(CLabelPropertyDialog)
protected:
virtual void DoDataExchange(CDataExchange* pDX); // DDX/DDV support
//}}AFX_VIRTUAL// Implementation
protected: // Generated message map functions
//{{AFX_MSG(CLabelPropertyDialog)
virtual void OnOK();
virtual void OnCancel();
//}}AFX_MSG
DECLARE_MESSAGE_MAP()};对应cpp部分代码:
void CLabelPropertyDialog::DoDataExchange(CDataExchange* pDX)
{
CDialog::DoDataExchange(pDX);
//{{AFX_DATA_MAP(CLabelPropertyDialog)
DDX_Text(pDX, IDC_EDIT_TEXT, m_text);
//}}AFX_DATA_MAP
}
class CLabelPropertyDialog : public CDiagramPropertyDlg
{// Construction
public:
CLabelPropertyDialog(CWnd* pParent = NULL); // standard constructor
~CLabelPropertyDialog(); virtual void SetValues();// Dialog Data
//{{AFX_DATA(CLabelPropertyDialog)
enum { IDD = IDD_DIALOG_PROPERTY_LABEL };
CString m_text;
//}}AFX_DATA// Overrides
// ClassWizard generated virtual function overrides
//{{AFX_VIRTUAL(CLabelPropertyDialog)
protected:
virtual void DoDataExchange(CDataExchange* pDX); // DDX/DDV support
//}}AFX_VIRTUAL// Implementation
protected: // Generated message map functions
//{{AFX_MSG(CLabelPropertyDialog)
virtual void OnOK();
virtual void OnCancel();
//}}AFX_MSG
DECLARE_MESSAGE_MAP()};对应cpp部分代码:
void CLabelPropertyDialog::DoDataExchange(CDataExchange* pDX)
{
CDialog::DoDataExchange(pDX);
//{{AFX_DATA_MAP(CLabelPropertyDialog)
DDX_Text(pDX, IDC_EDIT_TEXT, m_text);
//}}AFX_DATA_MAP
}
丢类比较正常
不过手动加肯定是没有问题的
你报什么错?
1、在File View中查看是否添加了该类的.cpp 和 .h文件
2、关闭工程,删除工程下的.ncb文件再打开工程试试至于运行的错误,猜不到,调试吧