怎么了?(表达式类型必须为布尔值)



我的代码有什么问题?我收到此错误:

[dcc32 错误] 单元6.pas(83): E2012 表达式类型必须是布尔值

function checkver(): boolean;
begin
  //some code here
end;
function refresh(): boolean;
begin
  //some code here
end;
procedure TForm6.FormCreate(Sender: TObject);
begin
  if checkver() then
    if refresh() then  //Error is HERE!!
      //some code here
end;

(完整代码)

TControl(表单类从中衍生)有自己的Refresh方法,并且不返回布尔值。该方法的作用域比同名的单元级方法的作用域更近,因为您是在该类的方法中编写代码,因此编译器与 Refresh 方法绑定,而不是 refresh 函数。

调用 <unitname>.refresh 以获取单元级函数而不是方法。

相关内容

最新更新