1. 建立一个对话窗形式的MFC应用程序,注意在导航的第2页上,一定要选择ActiveX Controls。这也是默认的选择。 2. 向工程中添加 Microsoft Web 浏览器的ActiveX控件。 执行菜单 Project\Add To Project\Components And Controls... 选择Registered ActiveX Controls目录,找到Microsoft Web 浏览器,并Insert。这样MFC会给你产生一个IWebBrowser2的包装类CWebBrowser2。 3. 在对话窗资源编辑器中,把工具条上的IE控件放到你的对话窗中。启动ClassWizard,映射这个IE控件为CWebBrowser2的一个对象(在演示程序中的对象名称是m_ie) 以上一段,来自:http://www.vckbase.com/index.php/wv/809%E7%9C%8B%E8%BF%99%E4%B8%AA1.什么是activex包装类,有没有详细的文章,连接,让我学习,参考一下。
2. 既然IWebBrowser2是一个接口,那么在mfc中使用它的时候,添加了一个activex控件,然后用类向导生成一个包装类,为什么要如此使用?
我以前接触的 com,是: 使用接口,createinstacne,然后调用成员方法,而不是采用什么包装类的法子。
2. 既然IWebBrowser2是一个接口,那么在mfc中使用它的时候,添加了一个activex控件,然后用类向导生成一个包装类,为什么要如此使用?
我以前接触的 com,是: 使用接口,createinstacne,然后调用成员方法,而不是采用什么包装类的法子。
你的意思是说:包装类的方式是直接使用派生类对象嘛?
com这个东西 是有接口+派生类(即实现)两部分构成,使用的时候,是把接口暴露给用户。
主贴中讨论的问题和你回答的,那么这个包装类显然不能是 接口,因为接口不可能产生对象的,有纯虚函数!!!只有一种解释了, 包装类是特殊的“ 实现类”。如果其是“实现类”,似乎又与"不允许暴露实现给用户“违背!!!如果是对”实现类“的特殊处理的话, 那么我们是否可以对其重新命名?或者,我在这个包装类基础上,进行修改代码什么的?
2. 搞出一个包装类来,增加了程序员要学的东西, 有介绍包装类的文章嘛。
up up 又要沉了