假設你的截圖就是你所謂做這樣的事情的數據集:
procedure GetUserNames(DataSet : TDataSet; StringList : TStringList);
var
Field : TField;
begin
Field := DataSet.FieldByName('username');
StringList.BeginUpdate;
try
DataSet.DisableControls;
try
DataSet.First;
while not DataSet.Eof do begin
StringList.Add(Field.AsString);
DataSet.Next;
end;
finally
DataSet.EnableControls;
end;
finally
StringList.EndUpdate;
end;
end;
,如果你改變GetUserNames的第二個參數,您可以使用它像這樣
procedure TForm1.GetUsers;
var
TL : StringList;
begin
TL := StringList.Create;
try
GetUserNames(MyTable, TL);
Memo1.Lines.Text := TL.Text;
finally
TL.Free;
end;
end;
順便說一句,轉換爲TStrings,如GetUserNames(DataSet : TDataSet; Strings : TStrings)
,您可以直接將Memo1.Lines傳遞給它。
我嘗試這個,但錯誤...與q3做 var txResul:stringlist begin Close; SQL.Clear; SQL.Add('SELECT * FROM user'); SQL.Add('SELECT * FROM user'); 開放; 接下來; 結束; txtResult.Add(q1.FieldByName('username').AsString); –
請勿使用「with」!它節省了最少的時間,並容易導致錯誤。順便說一句你是指q3還是q1? – MartynA
安東,請勿使用註釋向您的問題添加信息。通過使用[編輯鏈接](http://stackoverflow.com/posts/41321306/edit)將該信息添加到實際問題來修復您的問題。 –