1
我正在改进一个Delphi程序... 有一个程序,期望TFormClass
参数(class of TForm)
。我得到一个错误不兼容的类型TFormClass和类参考
我通过TForm1或类似的,它不喜欢。例如。 procname(TForm1);
程序中还有其他类似的程序, 同样在程序中传递,但它们没有这样的编译错误。
E.g.还有另一种形式通过并定义为
type TForm4 = class(TForm)
....
procname(TForm4);
这不会导致编译错误。
我的形式被定义为类型
TForm1 = class(TForm)...
它看起来相似,对不对?这可能是编译器不接受的原因。
为什么其他人接受?有什么区别?
谢谢。
更好地复制粘贴_exact_代码段。我不相信我们能看到这里的错误部分。 – 2010-10-16 11:20:39
想象出一个单元重新定义tform,所以它使这些异常特殊 – Aftershock 2010-10-16 16:48:14
你没有*重新定义* TForm,你定义了一个新的类具有相同的名称。这种差异很微妙,但非常重要。 – 2010-10-16 17:39:38