MFC中文档类的 OnOpenDocument是怎样打开文件的呢?
答案:1 悬赏:70
解决时间 2021-03-29 10:33
- 提问者网友:不要迷恋哥
- 2021-03-28 16:45
MFC中文档类的 OnOpenDocument是怎样打开文件的呢?
最佳答案
- 二级知识专家网友:鱼忧
- 2021-03-28 17:54
这是比较典型的MFC封装问题。
实际上,在到达文档类的OnOpenDocument的时候,大部分之前的关联、文件对话框的工作已经做完了,而函数的参数,实际就是CFileDialog获取到的文件名。
封装的过程比较复杂,都是在MFC的基类代码中实现的(大部分为开源,可以在安装目录找到),处理关联是在APP基类,处理绑定是在文档模板类(注意不是文档类),处理工具条消息响应是在框架类基类。这些处理过程,除了模板类的只能完全替换,其它的都可以通过重载来定制。
而你说的“LPCTSTR lpcPathName这个参数我并没有定义它到哪个位置”,描述并不准确。参数是不需要提前进行定义的,只是传递的过程是封装在模板类中。
实际上,在到达文档类的OnOpenDocument的时候,大部分之前的关联、文件对话框的工作已经做完了,而函数的参数,实际就是CFileDialog获取到的文件名。
封装的过程比较复杂,都是在MFC的基类代码中实现的(大部分为开源,可以在安装目录找到),处理关联是在APP基类,处理绑定是在文档模板类(注意不是文档类),处理工具条消息响应是在框架类基类。这些处理过程,除了模板类的只能完全替换,其它的都可以通过重载来定制。
而你说的“LPCTSTR lpcPathName这个参数我并没有定义它到哪个位置”,描述并不准确。参数是不需要提前进行定义的,只是传递的过程是封装在模板类中。
我要举报
如以上问答内容为低俗、色情、不良、暴力、侵权、涉及违法等信息,可以点下面链接进行举报!
大家都在看
推荐资讯