MFC:VisualStudio2017如何添加变量(类向导无法像之前的版本一样使用)

问题描述:

记得以前写MFC的时候,我们在绑定组件和变量的时候,右键->添加变量后,看到的界面是这样的:
MFC:VisualStudio2017如何添加变量(类向导无法像之前的版本一样使用)_第1张图片
于是就可以很熟练的进行操作了,可是今天,当我使用VisualStudio2017的时候,发现这个添加变量的界面是这样的:
MFC:VisualStudio2017如何添加变量(类向导无法像之前的版本一样使用)_第2张图片
这直接把我整蒙了,这还怎么绑定啊。我琢磨了很久之后,终于搞明白了该怎么手动进行注册绑定。

手动注册

这里说明一下,我们在建立MFC工程后,会自动出现很多个文件,所有和可是界面有关系的都叫做“工程名Dlg”。

首先在“工程名Dlg.h”文件中添加成员:
MFC:VisualStudio2017如何添加变量(类向导无法像之前的版本一样使用)_第3张图片
先找到 文件名Dlg::public CDialogEx 这个类,然后添加成员变量。

红色框里面的内容是我们要自己手动写上去的。其中,类型的命名方式就是,你看你自己拖进去的那个空间叫什么,在名字前面加一个C,就是这个空间的类型,然后后面的名字是你自己取的。我这里拖进去了三个下拉框,于是取了三个变量名称。

下面那些afx_msg是你拖控件进去时自动生成的,相当于你需要手动写进去的就是红色框里面的内容,其余的都不用管。

手动绑定

在“文件名Dlg.cpp”文件中,找到 文件名::DoDataExchange()函数:MFC:VisualStudio2017如何添加变量(类向导无法像之前的版本一样使用)_第4张图片
在这个函数中,你需要写DDX_Control()函数,这是一个动态绑定函数,第一个参数照着写,第二个参数是你要作用的控件的ID,第三个是你刚才注册的成员变量名称,通过这样的方式,你就可以完成绑定。

之后,我们就可以通过自己定义的成员变量名称来调用方法,并在作用在指定的控件中。

界面样式

下图为界面大致样式:
MFC:VisualStudio2017如何添加变量(类向导无法像之前的版本一样使用)_第5张图片

你可能感兴趣的:(MFC,mfc,vs2017,添加变量,类向导)