如何将自己的Delphi控件转换为ActiveX控件,有工具吗?(50分)

  • 主题发起人 主题发起人 lofa
  • 开始时间 开始时间
L

lofa

Unregistered / Unconfirmed
GUEST, unregistred user!
难道要编一个自己的ActiveX控件非要从VCL的部件或ActiveX Form中来选择吗?
 
Delphi向导不是提供了么,需在Delphi下注册或者用REGSVR32注册
 
我以前也问过类似的问题,有个家伙知道但他不说!
 
1.将你写好的控件安装
2.New一个ActiveX Control
3.在向导对话框的祖先类里找到你刚才写好的控件
4.单击生成
5.一切OK
 
我的控件是从TComponent继承而来的,而且已经Build进部件面板了,使用也很正常,
可是在ActiveX控件的生成向导里面找不到它,控件是不可视控件。这怎么办?快点
差一点就可以成功了。
 
你继承的是不是Tgraphiccontrol,如果是的话你把他改成Tcustomcontrol就ok了,记得给分喔
 
如果你开发的是不可视的控件,好象是不能转换的,如果不是的话,就按我的做法把他从Tcustomcontrol继承
 
<<D5开发人员指南>>上说:
在A c t i v e X控件向导的下拉列表框中有V C L控件的列表,
但并不是所有的V C L控件都在这个清单中,被列出来的V C L
控件要满足下面三个准则:
• V C L控件必须在当前安装的设计包中(它必须在组件面
板中)。
• VCL控件必须是TWinControl的派生类,当前非窗口控件不能转换为ActiveX控件。
• V C L控件必须是还没有被R e g i s t e r N o n A c t i v e X ( )过程列出来的,R e g i s t e r N o n A c t i v e X ( )过程
在Delphi的在线帮助中介绍。
许多标准的V C L控件无法转换为A c t i v e X控件,是因为其中有些转换成A c t i v e X控件没有意
义,或者是因为转换需要大量的工作,超出了向导能提供的功能。T D B G r i d控件是一个很好的
V C L控件,但转换成A c t i v e X控件没有意义,因为它需要另一个类T D a t a S o u r c e作为它的属性,
而这用A c t i v e X是没法提供的。T Tr e e Vi e w在转换成A c t i v e X控件时需要大量的工作,因为在
TTreeView中的节点在ActiveX中很难表示。
注意虽然ActiveX向导不能把一个非窗口的控件转换成ActiveX控件,但能通过Delphi ActiveX
(DAX)框架来手工编写这样的控件。

因此,你只能手工去编写一个类似的东东了:(
 
对,用delphi里的向导,几步就可以
 
1.主菜单上选择FILE/NEW,在ACTIVEX页中选择ACTIVE CONTROL;
2.选择DELPHI中的VCL组件名称进行封装.
3.转换后的控件可在不同的开发环境中使用.[blue][/blue]
 
多人接受答案了。
 
只能用DAX手工编写,我只是知道应该这样做,现在也正在找DAX方面的资料呢。
 
后退
顶部