• ehlib预览打印的使用


       ehlib支持预览打印功能,可以省去重新制作报表的麻烦,经过一天的努力,基本上解决了这个问题。把解决方法写出来,同行的朋友可以参考,同时为自己做个学习笔记。

        首先,需要放置PrintDBGridEh和PreviewBox两个控件。通过PreviewBox设置纸张的大小和方向。方向通过PreviewBox1.Printer.Orientation属性设置,poLandscape为横向,poPortrait 为纵向。纸张大小尚未研究明白,以后再补充。
        然后,需要设置将内容显示在一页内,将PrintDBGridEh的options的pghFitGridToPageWidth属性设置为true就可以了。
        具体预览代码如下:
        self.yb_DBGridEh2.Visible:=False;
        Self.yb_PreviewBox1.Printer.Orientation:=poLandscape;//纸张方向
        Self.yb_PreviewBox1.Printer.PrinterSetupOwner := self.yb_DBGridEh2;
        self.yb_PrintDBGridEh1.DBGridEh:=self.yb_DBGridEh2;
        self.yb_PrintDBGridEh1.PrintTo(Self.yb_PreviewBox1.Printer);
        self.yb_PreviewBox1.Visible:=True;
        具体打印代码如下:
          Self.yb_PreviewBox1.Printer.Orientation:=poLandscape;
          Self.yb_PreviewBox1.Printer.PrinterSetupOwner := self.yb_DBGridEh2;
          self.yb_PrintDBGridEh1.DBGridEh:=self.yb_DBGridEh2;
          self.yb_PrintDBGridEh1.PrintTo(Self.yb_PreviewBox1.Printer);
          self.yb_PreviewBox1.PrintDialog;
  • 相关阅读:
    cookie和session的区别?
    请画出Servlet 2.2以上Web Application的基本目录结构
    简述HttpSession的作用、使用方法,可用代码说明
    Request对象的主要方法
    什么情况下调用doGet()和doPost()?
    SERVLET API中forward()与redirect()的区别?
    Servlet的基本架构
    说一说Servlet的生命周期
    解释一下什么是servlet?
    基数排序
  • 原文地址:https://www.cnblogs.com/bwdblogs/p/10323116.html
Copyright © 2020-2023  润新知