我在这定义个方法:
type
TForm13 = class(TForm)
procedure EnabledDebugPrivilege(const bEnable:Boolean);
然后调用 tForm13.EnabledDebugPrivilege(True);的时候给出[Pascal Error] Unit13.pas(36): E2076 This form of method call only allowed for class methods错误 是啥意思啊不加tform13也是错的谢谢!
type
TForm13 = class(TForm)
procedure EnabledDebugPrivilege(const bEnable:Boolean);
然后调用 tForm13.EnabledDebugPrivilege(True);的时候给出[Pascal Error] Unit13.pas(36): E2076 This form of method call only allowed for class methods错误 是啥意思啊不加tform13也是错的谢谢!
Form13.EnabledDebugPrivilege(True);调用
2.你可这样定义:class procedure EnabledDebugPrivilege(const bEnable:Boolean);
这样就可以用:
tForm13.EnabledDebugPrivilege(True);调用
有实现代码吗?
只有声明成class类型的方法,才可以通过类名调用
LZ可以先创建一个实例,如
from3 := tform3.create(nil);
form3.EnabledDebugPrivilege()或者定义EnabledDebugPrivilege时,最前面加个class关键字
class procedure EnabledDebugPrivilege(const bEnable:Boolean);
肯定是改了interface部分的,没有改实现部分的,检查校验一下