情况是这样子的。
我有一张报表,她的列很少(3个),所以要求一张页(A4)打印两栏,具体设置在
菜单-文件-页面设置-选项-栏数,默认为1,我把它改成2,
我以前用的是2.47,是好的,后来因为要用到导出报表,改用了2.5版本,
改用2.5版本后,此报表打印就不对了(预览也不行),
出错现象:第一页是正确的,第二页的左边空白(空白的范围是一个栏位的大小),
最右边就打印到没有纸的地方去了。
谁能解决在送一百分。

解决方案 »

  1.   

    procedure TfrPage.DrawPageFooters;
    //var 
    //  sadj : integer;
    begin
      CurColumn := 0;
    //  sadj:=XAdjust;
      XAdjust := LeftMargin;
      if (PageNo <> 0) or ((Bands[btPageFooter].Flags and flBandOnFirstPage) <> 0) then
        while PageNo < MasterReport.EMFPages.Count do
        begin
          if not (Append and WasPF) then
          begin
            if (CurReport <> nil) and Assigned(CurReport.FOnEndPage) then
              CurReport.FOnEndPage(PageNo);
            if (MasterReport <> CurReport) and (MasterReport <> nil) and
              Assigned(MasterReport.FOnEndPage) then
              MasterReport.FOnEndPage(PageNo);
            ShowBand(Bands[btPageFooter]);
          end;
          Inc(PageNo);
        end;
      PageNo := MasterReport.EMFPages.Count;
      // XAdjust:=sadj;
    end;
    已测试通过,改FR_CLASS。PAS,重新编译、安装