我用PrepareReport添加打印,不管打印一页还是多页,预览时没有问题,而打印时总是多打印一页空白页。而设置打印当前页时,打印没有反应,设置打印第一页和全部时总会莫名多出一页空白页。pagecount总是2。不知是什么原因,求高手指教啊。
代码大概样式:
按钮按下事件里:            KG_ZSBH := Trim(FieldByName('AB006').AsString);
            KG_XM := Trim(FieldByName('AA002').AsString);
            KG_XB := Trim(FieldByName('AA007String').AsString);
            KG_SFZH := Trim(FieldByName('AA003').AsString);
            KG_SSZS := Trim(FieldByName('AA015String').AsString);
            frpKGDY.LoadFromFile(fr3Path);
            frpKGDY.PrepareReport();
            frpKGDY.PrintOptions.ShowDialog := False;
            frpKGZDY.Print;
frpKGDYGetValue(const VarName: String; var Value: Variant);
BEGIN
    if CompareText(VarName, 'KG_XM ') = 0 then
    begin
        Value := KG_JB;
    end;
    .
    .
    .
    .
END

解决方案 »

  1.   

    跟这些代码没有关系,是和你的报表设计有关,比如page footer,或者其它的Band高度太高了
    或者控制了打印的笔数,不过也不排除打印机的问题自己多测试吧
      

  2.   

    设计报表时候没用page footer,我是直接在reprotpage上放控件的,是不是这原因啊。
      

  3.   

    检查报表设计器各组件上、下、左右的高度宽度,如band等
      

  4.   

    打印设置的其他选项里,把“双份”设为“Simplex"就没问题,查了下是单向打印,不知道是什么问题,继续求教。delphi应该怎么直接设置“双份”设为“Simplex"
      

  5.   

    我也是这问题,这是fastreport中页面设置中的长宽超过打印机打印能力的时候产生的错误,,,已解决
      

  6.   

    fastreport  设计时候最好是A4 或者B5 不然的话打印的时候会出现各种意想不到的问题。‘
    多打印一页是不是纸张的长度设置长了,或者有隐藏的控件什么的 好好看看 。