窗体本身有Name属性,你这个Name的变量和窗体自身的Name属性重名了!所以,编译器以为你是给Self.Name赋值, Self.Name中有代码检测,是IDE用到的,不允许非字母或者下划线开头的其他字符串赋值给Name属性,于是报错了.改你的变量名,如下:
var
Form7: TForm7;
IdName:string;
procedure TForm7.Button2Click(Sender: TObject);
begin
inherited;
//设置【pr】下拉列表框中下拉列表项目
ADOQuery2.Close;
ADOQuery2.SQL.Clear;
ADOQuery2.SQL.Add('select id号 from pr where 姓名=''' + dbedit3.Text + '''');
ADOQuery2.Open;
dbcombobox2.Items.Clear;
while not ADOQuery2.Eof do
begin
IdName:=ADOQuery2.fieldbyname('id号').AsString;
dbcombobox2.Items.Add(IdName);
ADOQuery2.Next;
end;
end;
end