FastReport.Net 无限页高/自动页高(连续纸小票) 图文 实用版

        前一阵,笔者一直使用FastReport.Net开发报表,遇到一个连续纸的问题,没想到FastReport.Net竟然没有默认设置的无限页高,或者自动页高的功能。网上搜了一些,找出了类似于    FastReport.Net 无限页高(连续纸小票) - 青侠oO - 博客园   这样的技术博客。百度搜了一下也基本都是同样的内容。

但是内容都是全代码,没有什么鸟用啊,好多内容都需要自己配置研究。后来经过笔者的一番研究,终于找到了解决方案,大概也是跟上述文档的一致,只是一些细节没有贴出来。现在我结合我的创作历程,将上述代码进行改造后以图文的形式展示给大家,在这里感谢之前整理的前辈,我也是在前辈的基础上实现的功能。

好了正文开始:

需求:就是要实现连续纸的效果。

先看最后效果:

说明:上面图片中的(S)RK214100001 是绑定的数据行自动变化的,右下角的Q1  以及4LCN  和最下方的条码是固定的内容。

设计界面如下:

 由于数据内容是动态的,因此需要绑定数据区。

点击左下方的代码按钮,切换到代码页签。

代码如下

using System;
using System.Collections;
using System.Collections.Generic;
using System.ComponentModel;
using System.Windows.Forms;
using System.Drawing;
using System.Data;
using FastReport;
using FastReport.Data;
using FastReport.Dialog;
using FastReport.Barcode;
using FastReport.Table;
using FastReport.Utils;

namespace FastReport
{
  public class ReportScript
  {
   
    //定义数据区高度变量
    private float data1Height;  
    //定义栏尾高度变量
    private float ColumnFooter1Height;
    
    Page1的StartPage事件
    private void Page1_StartPage(object sender, EventArgs e)
    {
      if(Engine.FinalPass)
      {  
        //页面高度的计算
        Page1.PaperHeight = (data1Height+ColumnFooter1Height)/Units.Millimeters+ Page1.TopMargin +Page1.BottomMargin;  
      }      
    }
    
       
    //数据区Data1的高度
    private void Data1_AfterLayout(object sender, EventArgs e)
    {
      data1Height+=Data1.Height;
    }     
              
    //栏尾ColumnFooter1的高度
    private void ColumnFooter1_AfterLayout(object sender, EventArgs e)
    {
      ColumnFooter1Height+=ColumnFooter1.Height;      
    }
    
      
    
  }
}

 

在上方代码中,有三个事件。

设置方式是:

1、点击数据区

2、点击属性页中的事件按钮

3、选择事件AfterLayout 对应的代码:Data1_AfterLayout

 4、其他的两个事件也是如此,可以在属性页中选择对象

 添加三个对象的事件:

1、Page1_StartPage

2、Data1_AfterLayout

3、ColumnFooter1_AfterLayout

有的小白可能会问,这个Data1是怎么来的呢?如果你增加了其他对象,可以从属性页中找到

最后就是页面的计算

Page1.PaperHeight = (data1Height+ColumnFooter1Height)/Units.Millimeters+ Page1.TopMargin +Page1.BottomMargin;  

为啥加 /Units.Millimeters  我也不知道。。。。反正我是从其他地方复制粘贴过来的。

这个时候打印预览总是达不到效果,查了其他资料原来缺少了一箱配置

非常重要        非常重要        非常重要

报表必须开启“双通道”

开启方式:报表菜单->选项-> 一般->勾选双通道

 至此,就能实现自动页高,连续纸小票功能。

大功告成。

对了附上本次版本

 

如有问题,欢迎指正,我再完善。

另外,新增加事件的方式,就是在事件上右侧空白那双击即可,如下图红框部分。

 

 

 

  • 1
    点赞
  • 8
    收藏
    觉得还不错? 一键收藏
  • 2
    评论
### 回答1: FastReport .NET是一套用于生成和管理报表的工具,用户手册中文.pdf提供了对该工具的详细介绍和使用说明。 该用户手册从安装和配置开始,介绍了如何创建报表和报表,并讲解了如何添加数据源和数据集合,以及如何设置样式和布局等。此外,手册还介绍了快速报表设计器中的各种工具和组件,如报表元素、文本框和图表等,并详细介绍了如何使用这些工具。 用户手册涵盖了FastReport .NET的所有重要功能,包括导出报表和打印报表等。通过这份手册,用户可以轻松学会如何生成质量的报表,并了解如何调整格式和样式以满足其需求。 总之,FastReport .NET用户手册中文.pdf是初学者和有经验的报表软件使用者的必备指南。它提供了全面的使用说明和案例,有助于提工作效率并为用户带来异于常规的体验。 ### 回答2: fastreport .net用户手册中文.pdf是FastReport .NET的用户手册,其包含有关FastReport .NET的详尽信息和指南。FastReport .NET是一个用于.NET平台的报表生成工具,可以让开发人员按照自己的要求创建各种类型的报表,如表格、图形和条形图等。这个工具基于C#语言开发,提供了许多对于报表生成的重要功能,例如: 1. 丰富的报表设计器和报表设计器使报表的设计和布局变得非常方便和快速。 2. 支持多个文件格式的输出(例如PDF、Excel、Word、HTML等),可以让用户轻松地在任何地方查看和分享报表文件。 3. 强大的数据源连接功能,让用户可以轻松地连接到各种数据库和数据源,并从中抽取所需的数据。 4. 灵活的数据处理和计算功能,可以在报表中使用多种数据处理方式并生成自定义函数。 5. 效的性能和点对点支持,可以在多个平台和系统之间实现快速而且稳定的报表生成服务。 总的来说,fastreport .net用户手册中文.pdf是FastReport .NET工具的必备指南,可以帮助用户更好地了解这个工具的特点和功能,并在其日常的报表生成工作中更加快速和效。 ### 回答3: fastreport .net用户手册中文.pdf是FastReport .NET报表生成工具的用户手册的中文FastReport .NET是一款功能强大的报表生成工具,能够帮助用户快速生成各种报表,包括表格、图表、交叉表、子报表等不同类型的报表。这款软件简单易用,支持多种数据源,可以连接各种关系型数据库,并且支持多种输出格式,包括PDF、HTML、Excel、Word等。 用户可以通过该手册了解FastReport .NET的各项功能和使用方法。手册主要分为四个部分:基础知识、报表设计、报表演示和开发。基础知识介绍了FastReport .NET的基本概念、界面和操作方法,以及如何设置数据源、样式等。报表设计主要讲述如何设计各种类型的报表,并介绍了报表元素、样式、数据绑定等相关知识。报表演示则向用户展示了一些常用的报表示例,让用户可以更直观地了解FastReport .NET的功能和效果。最后,开发部分讲述了如何将FastReport .NET集成到自己的应用程序中,并介绍了如何进行C#代码编写等。 总之,FastReport .NET用户手册中文.pdf为用户提供了全面的使用指南,并且简单易懂,即使是新手也可以轻松上手。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值