我如何输出delphi中某一列下的所有行?

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了我如何输出delphi中某一列下的所有行?相关的知识,希望对你有一定的参考价值。

procedure TfrmPlayers.btnPlayersClick(Sender: TObject);
var
  i: integer;
begin
  memoPlayers.Clear;
  with dbgPlayers do
    begin
      for i := 0 to FieldCount-1 do
      begin
        memoPlayers.Lines.Add(Fields[i].AsString);
      end;
    end;
end;

我找到了用于输出第一行中所有列的解决方案。但我想让它在某一列下输出所有行。

答案

您需要遍历所有行(如注释中提到的@BugFinder)。您可以考虑包括两个附加步骤:

  • 记住数据集中的记录,以便以后使用TBookMark导航。
  • 使用DisableControls插入数据时禁用数据显示。

示例(根据您的代码):

procedure TfrmPlayers.btnPlayersClick(Sender: TObject);
var
   i: integer;
   b: TBookMark;
begin
   // Clear existing data
   memoPlayers.Clear;

   // Get the data
   b := dbgPlayers.GetBookmark;
   dbgPlayers.DisableControls;
   try
      dbgPlayers.First;
      while not dbgPlayers.Eof do begin
         for i := 0 to dbgPlayers.FieldCount-1 do begin
            memoPlayers.Lines.Add(dbgPlayers.Fields[i].AsString);
         endfor;
         dbgPlayers.Next;
      endwhile;
   finally
      if dbgPlayers.BookmarkValid then dbgPlayers.GotoBookmark(b);
      dbgPlayers.FreeBookmark(b);
      dbgPlayers.EnableControls;
   endtry;
end;

以上是关于我如何输出delphi中某一列下的所有行?的主要内容,如果未能解决你的问题,请参考以下文章

求代码,Linux系统如何输出文件中某一列数据第一个峰值对应的其他列中的数据

如何从C#中获取ListView中选中某一行某一列的值

如何获取GridView中某行某列的值

用java代码实现读取Excel中每个sheet页的内容,并且要与其他的Excel中某一列的值进行

如何批量修改oracle数据库中某一个表中的某一列数据?

delphi如何检索adoquery里面某一列存在的重复行?