VC++中不能为控件添加成员变量 深入本质

本文探讨了在VC++中为对话框控件添加成员变量时遇到的问题,分析了不能添加的原因,包括对话框ID的改变和未创建类。解决问题的关键在于对话框类的IDD设置与对话框属性中的ID一致,并确保相关头文件中的定义同步更新。注意,即使ID数值相同,也需要在多个位置进行同步修改,以避免编译错误。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

项目疑问

提出问题

1,在资源视图--右键单击--添加--资源,选择对话框后—在里面添加文本框时,不能为文本框添加成员变量。而在“解决方案资源管理器”中右键单击添加资源—对话框后,可以使用添加成员变量向导。为什么???(4-25)

分析问题

境界1:这是因为改了对话框ID,默认情况下可以添加成员变量,当改变了对话框ID后就不能添加成员变量了。

境界2:原来是没有为对话框创建类。当创建类后,在类的头文件里会有一个

// 对话框数据

   enum { IDD = IDD_DIALOG_LOGIN };

如果此时修改对话框ID,由于上面语句不变,出现新老ID不一致的情况,故不能添加变量。

导出问题:两个宏可以有相同的值吗?答:可以

解决问题

要能添加变量,必须满足以下条件:

(1)      对话框添加类

(2)      enum{IDD=·

评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值