打开APP
userphoto
未登录

开通VIP,畅享免费电子书等14项超值服

开通VIP
delphi7/2006中导入ocx控件常常不能显示在组件栏中的解决办法

delphi7/2006中导入ocx控件常常不能显示在组件栏中的解决办法

2012-10-17 15:02

问题:如何在   Delphi   或   BCB   中使用   VB   做的   ActiveX   控件?  
   
  VB:      
  选择   "New   Project"   ->   "ActiveX",然后直接编译成   Project1.OCX    
   
  Delphi   or   BCB:    
  选择:"Component"->"Import   ActiveX   Control..."    
              在列表中选择出   Project1   控件(看到提示中   Project1.OCX   没问题),   按下   "Install.."    
   
              提示加入库,按下   OK,   提示编译,Yes,   Project1_TLB   成功   Loaded,   可无论在哪里都找不到控件图标。   

解答1:点击Tools菜单->Environment   Options->Type   Library页,应该发现一项:Ignore   special   CoClass   Flags   When   Importing,选中它,然后再选中Can   Create那一项,那么现在,再尝试去导入那个可怜的ActiveX控件吧(这里要注意,如果你已经导入过一次,那么请把产生的那两个文件   .dcr   和   .pas文件删除,否则将不会刷新)。这次如果还是不能在ActiveX栏中发现那个控件的话,那么只有致电Microsoft或是Borland.

解答2:这个问题搞定了,问题出在   VB,由   Borland   Newsgroup   解答。  
   
  使用   Delphi   打开   OCX,   看到   CoClass   的"Can   Create"   属性为   False.   改为   True   即可。 

具体步骤:

delphi->open ocx(在delphi中显示为tlb),修改coClass ->can create为True,refresh后将ocx另存为tlb,import 此tlb即可在组件栏中显示并正常使用。可以使用该ocx中开放的接口(属性或事件等)。

将can create改为True后tlb的变化为在***_tlb.pas中增加了原来封装在ocx中的类的声明和原来pas文件中没有的register到组件栏中的函数:

procedure Register;
begin
  RegisterComponents(dtlOcxPage, [原OCX中的类名]);
end;

本站仅提供存储服务,所有内容均由用户发布,如发现有害或侵权内容,请点击举报
打开APP,阅读全文并永久保存 查看更多类似文章
猜你喜欢
类似文章
【热】打开小程序,算一算2024你的财运
Delphi?ActiveX?Form的使用实例(三)
VB中如何设定COM组件和ActiveX控件的CLSID值 - 没个性的日志 - 网易博客
Delphi安装/卸载OCX控件的方法
WIN7系统中Delphi中安装MSCOMM控件方法(保证有用)
MSComm串口控件使用出错 - 博客文库 - 博客园
delphi之如何快速开发原生ActiveX控件
更多类似文章 >>
生活服务
热点新闻
分享 收藏 导长图 关注 下载文章
绑定账号成功
后续可登录账号畅享VIP特权!
如果VIP功能使用有故障,
可点击这里联系客服!

联系客服