Pos机的打印和一般发票打印有点不同,POS机的纸张长度是不固定的,也就是说,我要POS机打印完了所有的内容就算打印完了一页,这个一页的长度并不固定,如果明细数据多的话,这个一页就比较长,如果明细数据少的话,这个一页就比较短,要怎么样才能做出这种不是固定长度的一页来呢?? 如果在程序中动态的设置报表纸长度应该怎么实现啊??
谢谢
如果知道的师傅发详细点代码!
谢谢~~判断数据源一共有多少条记录
在增加纸的长度!
请问过路的师傅怎么写这段代码啊??
急死人了!!如果方便的话把工程文件发到[email protected]
我会马上放分!!

解决方案 »

  1.   

    现没有工程文件:
    www.delphibox.com下载FASTREPORT中文帮助看看,应该有的...
      

  2.   

    直接端口写:
    procedure TForm1.Button1Click(Sender: TObject);
    var F:textfile;
    begin
      AssignFile(F, 'LPT1');
      Rewrite(F);
      Writeln(F, '商品名  单价  数量  小计');
      Writeln(F, '箱子    45.0  2    90.0');
      ...
      CloseFile(F);
    end ;
      

  3.   

    可以在打印前计算出纸张的长度再设置不就可以了,我用过,可以实现的.
        frm_print.frprint.Pages.Pages[0].pgSize:=256;
        frm_print.frprint.Pages.Pages[0].pgWidth:=2100;
        frm_print.frprint.Pages.Pages[0].pgHeight:=(5*dm_xsgl.q_xsdmx.RecordCount+33+33+40)*10;
        frm_print.frprint.PrepareReport;
        frm_print.frprint.ShowReport
    呵呵,这COOLCALF呀,怎么用我的代码呀?