怎么了? (表达式必须是BOOLEAN)

时间:2013-01-30 18:04:09

标签: delphi function boolean

我的代码出了什么问题?我收到了这个错误:

  

[dcc32错误] Unit6.pas(83):E2012表达式必须是BOOLEAN

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;

full code

1 个答案:

答案 0 :(得分:18)

TControl(您的表单类来自哪个)具有a Refresh method of its own,并且它不返回布尔值。该方法的范围比单元级方法的范围更接近同名,因为您在该类的方法中编写代码,因此编译器与Refresh方法绑定,而不是{{{ 1}}功能。

调用refresh获取单位级函数而不是方法。