vs2010对话框工具栏怎么调出来(VS2010中添加控件成员变量没有反应的问题)

今日发现奇怪的问题:

1) 系统中有一个已经使用多时的对话框,在对话框上添加一个按钮。

vs2010对话框工具栏怎么调出来(VS2010中添加控件成员变量没有反应的问题)(1)

2) 在按钮上右键,选择”添加成员变量”。

vs2010对话框工具栏怎么调出来(VS2010中添加控件成员变量没有反应的问题)(2)

3) 通常情况下,VS2010会弹出如下所示的对话框用于输入成员变量的信息。

vs2010对话框工具栏怎么调出来(VS2010中添加控件成员变量没有反应的问题)(3)

但是,今天并没有。

新建一个对话框,并重复上述步骤,没有出现此问题。于是,对出现问题的对话框和正常情况的对话框进行全方位对比,发现

1) 两者对应的类的头文件和实现文件并无明显差异,说明不是因为代码文件导致的。

2) 两者的属性并无明显差异,说明不是因为对话框的属性导致的。

3) 对话框ID,发现在出问题的对话框上,定义同一数值的两个不同名称的ID。如下:

#define IDD_DIALOG1 328

#define IDD_DIALOG_TEST 328

查看该对话框头文件,发现使用的是

enum { IDD = IDD_DIALOG1 };

但是,此时对话框在资源视图中的ID已经定义为:IDD_DIALOG_TEST。

至此,解决方法就简单了:直接修改代码,将ID改为IDD_DIALOG_TEST即可。

所以,此问题的原因出在头文件中对话框的ID定义和资源视图中的ID不一致导致的。

温馨提醒:需要新增对话框和控件时,尽量避免出现值相同但名称不同的ID,经常性的检查一下resource.h文件,查看有哪些未使用的ID,尽早删除。

,

免责声明:本文仅代表文章作者的个人观点,与本站无关。其原创性、真实性以及文中陈述文字和内容未经本站证实,对本文以及其中全部或者部分内容文字的真实性、完整性和原创性本站不作任何保证或承诺,请读者仅作参考,并自行核实相关内容。文章投诉邮箱:anhduc.ph@yahoo.com

    分享
    投诉
    首页