我的代码有什么问题?我收到此错误:
[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
以获取单元级函数而不是方法。