我原来用VB做了一个OCX控件,现在改用Delphi了,不想重写该控件(程序量很大)。在Delphi7中用Component-->Import ActiveX Control功能将其安装到ActiveX面板后,安装提示成功,但在ActiveX面板中却找不到该控件的图标,无法使用。请高手指教如何解决,不胜感激!

解决方案 »

  1.   

    可能要加一下,在菜单component->install packages里,
    把你所加ocx的包前面的钩打上
      

  2.   

    楼上的老兄,component->install packages在添加时需要选择BPL文件,我没有找到,也没有找到需要的OCX,所以无法打钩,请详细指教!
      

  3.   

    你在那个design packages里有一项
    Borland User Component,用户自己安装
    的控件都在里面吧,我机子上是这样的,
    你把他打上钩,试试看。
      

  4.   

    楼上老兄,您所说design packages中的Borland User Component钩是打上的,可能是其他问题,该不会Delphi7中不能引入VB6控件吧?请大虾们指教!
      

  5.   

    试试在uses中调用所安装的ocx控件
      

  6.   

    楼上老兄,请说详细点好吗?我刚开始学习Delphi
      

  7.   

    你的安装方法是对的,如果没有出现图标,是由于delphi自己要找一个同名的.dcr文件,要不要都可以,你可以在ACTIVEX面板上移动鼠标,看有没有一个没有图标的按钮,如果有,这个就是,如果没有,看是否多出一个对象的图标,这个也可能是。如果这两种情况下,都没有,那么就是VB做的OCX不是很好的兼容DELPHI,建议在VB中重新编译一次试试。我以前碰到过这种情况,VB做的OCX在delphi不是很好的工作.
      

  8.   

    非常感谢楼上的老师,您所述的几种方法我都试过了,还是不行。我用VB6做了一个最简单的OCX放到DELPHI7中仍然不显示在面板上。不知在VB6中有什么需要特别注意的地方,请多指教!
      

  9.   

    转到delphi中重做控件,或是到vc中做
      

  10.   

    转到Delphi中重做?不能称得上主意!
      

  11.   

    VB做的OCX是无法在delphi中用的。
    VB做的东东都是要它的DLL一起才能运行的,所以,Delphi只能调出它的一些interface,其它的别想了
      

  12.   

    果真如楼上老兄所言吗?重写OCX工作量太大,惨了,但VB写的DLL可以在DELPHI中调用,并且也能出现在面板上,请高手再论证一下!