我网上看了是这样写的可以正确执行
if ADOQuery1.RecordCount>0 then
begin
for i:=0 to ADOQuery1.RecordCount-1 do
begin
ComboBox1.Items.Add(ADOQuery1.FieldByName('name').AsString);
ADOQuery1.Next;
end;
在ADOQuery的afteropen事件中加入
COMBOBOX2.Items.Clear;
while not DataSet.Eof do
begin
COMBOBOX2.Items.Add(DataSet.FieldByName('字段名').AsString);
DataSet.Next;
end;