我在 Delphi 中收到 "undeclared identifier" 错误,我不知道为什么?
I am getting an "undeclared identifier" error in Delphi and I don't know why?
我遇到了麻烦,不确定为什么我在以下代码中收到 "Undeclared Identifier" 错误:
procedure getword;
var
i: integer;
begin
randomize;
randomwordnumber := random (20) + 1;
randomword := wordlist [randomwordnumber];
for i:=1 to length(randomword) do word:= word + '?';
lblrandomword.Caption := (word);
end;
这里还有确切的错误代码:
[Error] Unit1.pas(138): Undeclared identifier: 'lblrandomword'
提前致谢!
我们只能猜测,但 lblrandomword
可能是表格上的 TLabel
。您必须使 getword
成为那种形式的方法。可能是这样的:
TForm1 = class(TForm)
lblrandomword: TLabel;
//...
private
procedure getword;
//...
end;
procedure TForm1.getword;
var
i: integer;
begin
randomize;
randomwordnumber := random(20) + 1;
randomword := wordlist[randomwordnumber];
for i := 1 to length(randomword) do word := word + '?';
lblrandomword.Caption := (word);
end;
或者,您可以将标签作为参数传递给 getword
(由 Sebastian Proske 提供)。
补充说明:如果没有关于randomwordnumber
等的错误信息,这些可能是全局变量。这通常被认为是不好的做法。
我遇到了麻烦,不确定为什么我在以下代码中收到 "Undeclared Identifier" 错误:
procedure getword;
var
i: integer;
begin
randomize;
randomwordnumber := random (20) + 1;
randomword := wordlist [randomwordnumber];
for i:=1 to length(randomword) do word:= word + '?';
lblrandomword.Caption := (word);
end;
这里还有确切的错误代码:
[Error] Unit1.pas(138): Undeclared identifier: 'lblrandomword'
提前致谢!
我们只能猜测,但 lblrandomword
可能是表格上的 TLabel
。您必须使 getword
成为那种形式的方法。可能是这样的:
TForm1 = class(TForm)
lblrandomword: TLabel;
//...
private
procedure getword;
//...
end;
procedure TForm1.getword;
var
i: integer;
begin
randomize;
randomwordnumber := random(20) + 1;
randomword := wordlist[randomwordnumber];
for i := 1 to length(randomword) do word := word + '?';
lblrandomword.Caption := (word);
end;
或者,您可以将标签作为参数传递给 getword
(由 Sebastian Proske 提供)。
补充说明:如果没有关于randomwordnumber
等的错误信息,这些可能是全局变量。这通常被认为是不好的做法。