有时候,我们需要在一个容器中插入各种不同的对象,比如,QQ聊天对话框里可以插入各种静态和动态的图片,甚至还可以插入flash文件,这些都是通过OLE技术来实现的。OLE技术是基于COM的,而COM又是非常复杂的东西,想要学习COM得花很多的时间,《COM技术内幕》,《COM原理和应用》,《INSIDE OLE 2》都是非常好的学习COM和OLE的书,但要把这些书啃完,弄懂,几个月甚至半年都过去了。学习COM是一个郁闷、漫长的过程,虽然进步很慢,但坚持下去会很有意思。如果我们仅仅是使用别人的组件,并将别人的组件插入到自己的容器中,也不是很复杂,下面就是一个例子。
我们以MSDN的ATL Tutorial中创建的组件做为我们要插入的对象(该组件的创建请看MSDN)。
1、创建一个COM客户端基于对话框的工程,命名为Client,按默认选项设置工程。
2、在主对话框中加入一个RichEdit控件,用ClassWizard为添加一个表示该控件的变量,为m_re,记住类型设为control。为主对话框加入一个按钮,ID设为IDC_INSERTPOLYGON,Caption设置为InsertPolygon。
在RichEdit控件中插入OLE对象(ActiveX控件)
最新推荐文章于 2025-05-10 11:54:51 发布