您的位置:首页 > 其它

Error: no data exchange control with ID xx”案例

2013-04-12 11:42 387 查看

“Error: no data exchange control with ID xx”案例

(2010-03-11 19:44:11)

转载▼

标签:

no

data

exchange

it

分类:
Windows用户界面

前两天修改程序,调试时出现“Error: no data exchange control with ID xx”的报错。

查了一下ID,发现resource.h中有此ID。

再查看DoDataExchange中,也有此ID的DDX_Control。

这就怪了。

上网查也没找到解决问题的答案。

晚上睡觉前突然灵光一闪,发现了问题。

我的程序是这样的:1个主对话框,2个子对话框(Style为Child)。开始我为每个子对话框创建了一个Dialog资源,后来发现这两个子字对话框有很多相似的地方,所以决定只用一个Dialog资源的创建类作为父类,2个子对话框都从该父类继承。这是没有问题的,可由于修改代码的疏忽,详细看下面的代码描述。

修改前:CDialog* pDlg1 =new CDialog1(this);

pDlg1-Create(IDD_DIALOG1, this);

CDialog* pDlg2 = new CDialog2(this);

pDlg2->Create(IDD_DIALOG2, this);

修改后:CDialog1和CDialog2都从同一个IDD的Dialog资源类继承而来,Create时第一个参数应该都是IDD_DIALOG1(假设都从IDD_DIALOG1继承而来)。但由于疏忽,我忘了修改pDlg2 Create的第一个参数,因此就出现“Error: no data exchange...”错误。
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: 
相关文章推荐