我有一个相当简单的 MFC 应用程序,它只定义了自己的子类CDocument
, CView
and CFrameWnd
并通过使用它们CSingleDocTemplate
在视图的树中显示文档的只读内容。都是非常标准的MFC MVC。
我现在需要转换此应用程序,以便它作为 ActiveX 控件工作,然后我可以将其嵌入到更大的应用程序中。
我该怎么办?
是否可以使用COleControl
子类代替CFrameWnd
中的子类CSingleDocTemplate
?或者我需要放置CFrameWnd
内的子类COleControl
不知何故?
如果做不到这一点,我该如何使用我现有的CDocument\CView
ActiveX 控件中的子类?
回答我自己的问题:我发现很多关于这方面的旧文章的参考,该文章曾经位于http://www.microsoft.com/mind/0497/mfc.asp http://www.microsoft.com/mind/0497/mfc.asp但早已消失。 :(
不过幸运的是,回溯机 http://web.archive.org/collections/web.html仍然有它的完整副本:
“使用 MFC 文档/视图模型设计 ActiveX 组件”,作者:Steve Zimmerman,Microsoft 交互式开发人员(1997 年 4 月) http://replay.waybackmachine.org/20070813090526/http://www.microsoft.com/mind/0497/mfc.asp
Steve 提供了两个新类的源代码:
CActiveXDocTemplate
: 的一个子类CSingleDocTemplate http://msdn.microsoft.com/en-us/library/7yha6tek%28v=VS.90%29.aspx
CActiveXDocControl
: 的一个子类COleControl http://msdn.microsoft.com/en-us/library/77hhz71h%28v=VS.90%29.aspx
这让我可以使用现有的CView http://msdn.microsoft.com/en-us/library/ezc3635w%28v=VS.90%29.aspx and CDocument http://msdn.microsoft.com/en-us/library/y59b487w%28v=VS.90%29.aspxActiveX 控件中的子类。
(谢谢史蒂夫,无论你现在身在何处)
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)