我可以通过TOleContainer或其他方式直接在Delphi应用程序中实例化ActiveX控件吗?

时间:2012-09-11 01:18:18

标签: delphi activex

TOleContainer当然可以像Word文档一样插入OLE对象。但它似乎不适用于ActiveX。当然,我知道Delphi的IDE创建ActiveX包装器的能力。如果我想在不创建包装器的情况下创建控件并在运行时将其安装到IDE中,该怎么办?

控件已注册,因此unlike this question, I don't need registration-free com。我只需要一些关于如何启动动态ActiveX容器的想法或一些示例。

1 个答案:

答案 0 :(得分:5)

TOleContainer适用于ActiveX控件,您只需将Activex控件的正确ProgID传递给CreateObject方法,然后使用后期绑定访问ActiveX的属性。

检查此示例,该示例在运行时在TOleContainer内创建Windows Media Player ActiveX控件。

OleContainer1.CreateObject('Wmplayer.OCX.7', False);
OleContainer1.OleObject.URL:='F:\Music\Iron Maiden - The number of the beast.mp3';
OleContainer1.OleObject.Controls.Play;