Delphi 我得到了一个错误:类型TFormClass和类引用不兼容
我正在改进一个Delphi程序。。。 有一个过程需要TFormClass参数类为TForm 我通过了TForm1或类似的考试,但它不喜欢。例如,procnameTForm1; 程序中还有其他类似的形式在程序中传递, 然而,他们并没有这样的编译错误 例如,传递了另一个表单,它被定义为Delphi 我得到了一个错误:类型TFormClass和类引用不兼容,delphi,delphi-7,Delphi,Delphi 7,我正在改进一个Delphi程序。。。 有一个过程需要TFormClass参数类为TForm 我通过了TForm1或类似的考试,但它不喜欢。例如,procnameTForm1; 程序中还有其他类似的形式在程序中传递, 然而,他们并没有这样的编译错误 例如,传递了另一个表单,它被定义为 type TForm4 = class(TForm) .... procname(TForm4); 这不会导致编译错误 我的表单被定义为类型 TForm1 = class(TForm)... 看起来很像,对吧
type TForm4 = class(TForm)
....
procname(TForm4);
这不会导致编译错误
我的表单被定义为类型
TForm1 = class(TForm)...
看起来很像,对吧?编译器不接受这一点的原因可能是什么
为什么其他人被接受?有什么不同
谢谢。首先,这个程序不是我写的。我改进了它。。 该程序有一个单元,在所有没有出现问题的单元中导入 让它被称为UnitWithAdditionalTFormDotDefinitions 解决办法很简单 在该错误消息发出的单元n的开头,我更改了uses语句 E、 g 使用单元1、单元2、表单;//这是原始状态或类似状态 之后
使用Unit1、Unit2、Forms、UnitWithAdditionalTFormDot 最好复制粘贴精确的代码片段。我不相信我们能在这里看到错误的部分。。。一个单元重新定义了tform,所以它会产生一些特殊的异常。如果你没有重新定义tform,你定义了一个同名的新类。差异是微妙的,但却如此重要。也许你可以用你找到的解决方案来回答你的问题?