MFC类向导 对话框添加成员变量

chieh1213 2010-05-21 09:55:13
我下载了一个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
}

...全文
903 8 打赏 收藏 转发到动态 举报
写回复
用AI写文章
8 条回复
切换为时间正序
请发表友善的回复…
发表回复
zoe_from_mars 2010-11-11
  • 打赏
  • 举报
回复
关闭工程,将.clw删去,然后打开工程,打开类向导,会提示“类向导不存在,从source生成”,点击“确定”,输入类向导名称,就可以生成新的类向导了。
THer 2010-05-23
  • 打赏
  • 举报
回复
一般调试时会根据修改的递增量进行考虑,根据您描述的修改内容,该内容极简单,可能产生的其它附带影响非常少,故我认为您修改的内容不应该令程序产生错误

您可以试一下,重新Build->Clean一下工程,然后重新编译运行
cnzdgs 2010-05-22
  • 打赏
  • 举报
回复
类向导只认从CDialog直接派生的类,间接派生的不认。

CDialog::DoDataExchange(pDX);改成CDiagramPropertyDlg::DoDataExchange(pDX);
Eleven 2010-05-21
  • 打赏
  • 举报
回复
你关联CString对象没有问题,你Debug调试一下,看看哪里错误。。。
tzxx 2010-05-21
  • 打赏
  • 举报
回复
关于类向导中不显示类名,可以做如下尝试:
1、在File View中查看是否添加了该类的.cpp 和 .h文件
2、关闭工程,删除工程下的.ncb文件再打开工程试试

至于运行的错误,猜不到,调试吧
THer 2010-05-21
  • 打赏
  • 举报
回复
如果对应的Edit控件的ID为IDC_EDIT_TEXT正确无误,那么您手动添加的两处代码应该是没有问题,运行时出现的错误还需要进一步定位

为什么类向导的class name中没有这个类名?这个是因为工程配置文件出现问题了,其中可能对该类的描述配置不对,请用notepad.exe(文本文档)打开工程目录下的.dsp文件,在其中查找对应的类名看看

如果可以,请将该工程发过来看一下,QQ13076933
向立天 2010-05-21
  • 打赏
  • 举报
回复
6.0有bug
丢类比较正常
不过手动加肯定是没有问题的
你报什么错?
sjdev 2010-05-21
  • 打赏
  • 举报
回复
运行什么错误?调试一下,怎么个情况?

15,979

社区成员

发帖
与我相关
我的任务
社区描述
VC/MFC 界面
社区管理员
  • 界面
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧