基于对话框的MFC程序->转到对话框->拖入TreeControl控件->右键树控件添加类(我以为这样的类是继承自CTreeCtrl的)->对应类的头文件查看
过程如下:
跟我的预期并不相符,基类中没有我想要的CTreeCtrl类,后面我发现在对话框的任意位置右键添加类都是这样的情况,所以我下结论:在对话框中右键添加类其基类都是和对话框相关的类(如CDialogEx之类).
后面经过请教,找到了正确添加MFC类的方法:右键项目名->类向导->添加类右边的下拉框选择MFC类->此时查看基类就可以看到所有的MFC类,添加的新类也就继承自想要继承的类.
归根结底还是对MFC和VS的用法不熟悉.
从“插入”(Insert)菜单中选择“新建类”(New Class),在d出的对话框中选择基类(Base class),在Name中输入新类的名字(一般都以C开头)即可。如果想要建立一个没有基类的自定义类,则在New Class对话框中把Class type设置为generic,再输入类名即可。
从资源界面默认有关联有限定,一般对话框应该从这里添加类;从类视图添加类具有普遍性但没有关联,需要自己设定与对话框ID的关联。你第一个疑问应该是哪里 *** 作错误,比如鼠标位置不对,不行先上个实际的图吧。
补充疑问:InitInstance是程序入口,在APP类,不需要添加;OnInitDialog一般需要添加,在对话框cpp打开的时候,看右下角,找到对应事件添加即可。
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)