如何在我的delphi项目中从delphi Dll继承自定义表单(可视继承)

use*_*094 0 delphi dll inheritance plugins delphi-xe3

我有一个dll(在Delphi中创建),其中包含一个继承自TForm的TGlobalForm

我想在我的项目(Delphi Project)中使用TGlobalForm并从TGlobalForm继承一些表单.

示例TAccountsForm = class(TGlobalForm)

问题是我不想在项目的使用中使用GlobalForm pas文件,我希望它就像你创建一个新表单(File-> New-> Other)并选择(可继承的项目) )在(Delphi Projects)节点下,所以新创建的表单将显示继承表单的项目(按钮,编辑...)(TGlobalForm)

怎么做到这一点?

我正在使用Delphi XE3 - VCL Project

谢谢.

Dav*_*nan 6

无法从DLL导入和使用VCL对象.当您尝试这样做时,最终会得到两个不同的VCL实例,包括导入的表单类型的两个不同版本.DLL中有版本,应用程序中有版本.它们是截然不同的,这种类型的两个版本太多了.

从另一个模块导入复杂类型的受支持方法是使用包.如果您不想使用包,那么您将不得不使用某种形式的互操作,它可以跨DLL模块边界工作.例如,COM接口.