delphi 拷贝DBGrid当前行  
官方Delphi 学习QQ群: 682628230(三千人)
频道

delphi 拷贝DBGrid当前行


 var
  i: Integer;
  Line: String;
begin
  for i := 0 to DBGrid.Columns.Count - 1 do begin
    if Assigned(DBGrid.Columns.Grid.Fields[i]) then
      if Line = '' then
        Line := DBGrid.Columns.Grid.Fields[i].Text
      else
        Line := Line + ' ' + DBGrid.Columns.Grid.Fields[i].Text;
  end;
  Clipboard.SetTextBuf(pchar(Line));
end;
//感谢深思提供技术支持:)

procedure CopyDBData(DBGrid: TDBGrid);
const
  CRLF = #13#10;
var
  i: Integer;
  Lines: String;
  BookMark: Pointer;
begin
  BookMark := DBGrid.DataSource.DataSet.GetBookmark;
  DBGrid.DataSource.DataSet.First;
 
  while not DBGrid.DataSource.DataSet.Eof do begin
    for i := 0 to DBGrid.Columns.Count - 1 do begin
      if Assigned(DBGrid.Columns.Grid.Fields[i]) then
        if Lines = '' then
          Lines := DBGrid.Columns.Grid.Fields[i].Text
        else
          if i = 0 then
            Lines := Lines + DBGrid.Columns.Grid.Fields[i].Text
          else
            Lines := Lines + ' ' + DBGrid.Columns.Grid.Fields[i].Text;
    end;
    Lines := Lines + CRLF;
    DBGrid.DataSource.DataSet.Next;
  end;
  ClipBoard.SetTextBuf(PChar(Lines));
  DBGrid.DataSource.DataSet.GotoBookmark(BookMark);
end;

推荐分享
图文皆来源于网络,内容仅做公益性分享,版权归原作者所有,如有侵权请告知删除!
 

Copyright © 2014 DelphiW.com 开发 源码 文档 技巧 All Rights Reserved
晋ICP备14006235号-8 晋公网安备 14108102000087号

执行时间: 0.054255962371826 seconds