delphi - 如何从 TStringGrid 的内容创建 QuickReport

标签 delphi quickreports

我在 Windows 7 上使用 Delphi 7 和 QuickReports。通常 QuickReports 需要由查询生成的数据集,但我想根据 StringGrid 的内容制作报告,就好像 StringGrid 是某个结果的表示形式一样。查询。

如何?

最佳答案

使用 QuickReport.OnNeedData 事件处理程序。它传递一个名为 MoreData( bool 值)的 var 参数;将其设置为 True 意味着它会再次被调用。将 QuickReport.DataSource 属性留空,并使用普通 TQRText 控件而不是 TQRDBText。

// CurrLine is an Integer. In your case, it can represent a row in the StringGrid.
procedure TPrintLogForm.QuickRep1NeedData(Sender: TObject;
                      var MoreData: Boolean);
begin
  MoreData := (CurrLine < StringGrid1.RowCount);
  if MoreData then
  begin
    qrTextLine.Caption := StringGrid1.Cells[0, CurrLine];
    qrTextData.Caption := StringGrid1.Cells[1, CurrLine];
    Inc(CurrLine);
  end;
end;

关于delphi - 如何从 TStringGrid 的内容创建 QuickReport,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/3244249/

相关文章:

c# - 使用 COM 对 C# 应用程序进行内存分析

delphi - 如何调试Delphi项目?

.net - 在 .NET 中使用 .qr2 报告?

node.js - 如何将 QuickReport .QRP 文件转换为 XML、HTML 或文本?

delphi - 如何在msWord中打开QuickReport

delphi - XE7 将文本复制到剪贴板

delphi - 如何以不同的颜色绘制列表框中的项目

delphi,使用indy10从客户端向服务器发送图像

Delphi 快速报告 - 总页数

delphi - 可以生成 PDF/A 兼容文件的报告生成器