同意楼上fenglin2000(风林2000)的解法
在onneeddata事件中写代码
下面是我以前程式的代码, 不很好各位兄弟别见笑
procedure TFGatheringReceipt10.NeedData(Sender: TObject;
var MoreData: Boolean);
begin
inherited;
nowrow:=nowrow+1;
moredata:=(nowRow<=nowdbgrid.SelectedRows.count)or(nowrow mod 4<>1);
if moredata then
begin
if (nowrow mod 4 =1)and(nowrow<>1) then
QuickRep1.NewColumn;//我记得有一段时间无"and(nowrow<>1)"时
//NewColumn会报错,不知是否因为未安装打印机
if nowRow<=nowdbgrid.selectedrows.count then
Nowquery.gotobookmark(pointer(nowdbgrid.SelectedRows.items[nowRow-1]));
//assign value to all qrlabel
QuickRep1.QRPrinter.Progress:=QuickRep1.QRPrinter.Progress+1;
end
else
QuickRep1.QRPrinter.Progress:=QuickRep1.QRPrinter.Progress+1;