我前不久也写过这样的程序,请参考:我使用了三个变量
var
i,j,flag : integer ;
....
Data.ADOQ1.Close ;
Data.ADOQ1.SQL.Clear ;
Data.ADOQ1.SQL.Add('Select xs from student order by xs ') ;
Data.ADOQ1.Active := True ;
if Data.ADOQ1.RecordCount<>0 then
begin
Data.ADOQ1.First ;
for i:=0 to Data.ADOQ1.RecordCount do
begin
flag :=0 ;
for j:=0 to CB_xs.Items.Count do
begin
if CB_xs.Items.Strings[j]=Data.ADOQ1.FieldByName('xs').AsString then
begin
flag :=1 ;
break ;
end
else
flag :=0 ;
end;
if (flag=0) then
CB_xs.Items.Add(Data.ADOQ1.FieldByName('xs').AsString) ;
Data.ADOQ1.Next ;
end;
end;
你可以试试。