我用qreport设计的报表一页打印20条记录 我现在想这样设计如果没有20条记录 那么余下的部分也有表格  只是时空表格没有记录 这个如何实现

解决方案 »

  1.   

    procedure TFrmWxtzdpreview.DetailBand1AfterPrint(Sender: TQRCustomBand;
      BandPrinted: Boolean);
    begin
      i := i + 1;
    end;procedure TFrmWxtzdpreview.QuickRepNeedData(Sender: TObject;
      var MoreData: Boolean);
    begin
      if not FrmWxtzd.ADOQuery1.Eof then
        begin
          QRLabel17.Caption:=inttostr(i+1)+'、';
          QRLabel16.Caption:=FrmWxtzd.ADOQuery1.fieldbyname('opt').AsString;
          FrmWxtzd.ADOQuery1.Next;
          if i<15 then
            begin
              moredata:=true;
            end
          else
            begin
              FrmWxtzdpreview.NewPage;
              i:=0;
              moredata:=true;
            end;
        end
       else
         begin
           moredata:=true;
           QRLabel16.Caption:='';
           QRLabel17.Caption:='';
           if i=15 then
             moredata:=false;
         end;
    end;procedure TFrmWxtzdpreview.QuickRepBeforePrint(Sender: TCustomQuickRep;
      var PrintReport: Boolean);
    begin
      i:=0;
      FrmWxtzd.ADOQuery1.First;
    end;