flex 分页打印表格功能

private function printHandler():void{
            var printJob:FlexPrintJob = new FlexPrintJob();
            printJob.printAsBitmap = true;
            if (printJob.start()){
                    var myPrintData:PrintDataGrid=new PrintDataGrid();
                    var dataCol:DataGridColumn = new DataGridColumn();
                    dataCol.headerText = "序号";
                    dataCol.dataField= "NUM";
                    dataCol.width = 60;
                    var dataCol0:DataGridColumn = new DataGridColumn();
                    dataCol0.headerText = "拐点号";
                    dataCol0.dataField= "GDH";
                    dataCol0.width = 60;
                    var dataCol1:DataGridColumn = new DataGridColumn();
                    dataCol1.headerText = "X_坐标(起标高)";
                    dataCol1.dataField= "XZB";
                    dataCol1.width = 125;
                    var dataCol2:DataGridColumn = new DataGridColumn();
                    dataCol2.headerText = "Y_坐标(止标高)";
                    dataCol2.dataField= "YZB";
                    dataCol2.width = 125;
                    var dataCol3:DataGridColumn = new DataGridColumn();
                    dataCol3.headerText = "矿体标识";
                    dataCol3.dataField= "KTBS";
                    dataCol3.width = 220;
                    var dataCol4:DataGridColumn = new DataGridColumn();
                    dataCol4.headerText = "性质";
                    dataCol4.dataField= "XZ";
                    dataCol4.width = 60;
                    myPrintData.columns = myPrintData.columns.concat(dataCol)
                    myPrintData.columns = myPrintData.columns.concat(dataCol0)
                    myPrintData.columns = myPrintData.columns.concat(dataCol1);
                    myPrintData.columns = myPrintData.columns.concat(dataCol2);
                    myPrintData.columns = myPrintData.columns.concat(dataCol3);
                    myPrintData.columns = myPrintData.columns.concat(dataCol4);
                    Application.application.addChild(myPrintData);
                    myPrintData.dataProvider = dgCoord.dataProvider;
                    myPrintData.width=printJob.pageWidth;
                    myPrintData.height=printJob.pageHeight;
                    myPrintData.sizeToPage = true;
                    printJob.addObject(myPrintData);
                    while(myPrintData.validNextPage){
                        myPrintData.nextPage();
                        printJob.addObject(myPrintData);
                    }
                    Application.application.removeChild(myPrintData);
                    printJob.send();
               }
        }
<mx:DataGrid id="dgCoord" right="0" bottom="30" top="30"  left="0" editable="true" width="100%"
			visible="true" draggableColumns="false" sortableColumns="false" fontFamily="微软雅黑" fontWeight="normal"
			allowMultipleSelection="true" color="#0b333c" borderThickness="0"
			fontStyle="normal" textDecoration="normal" fontSize="12">
		<mx:columns>
				<mx:DataGridColumn headerText="序号" dataField="NUM" width="10" editable="false" textAlign="center"/>
				<mx:DataGridColumn headerText="拐点号" dataField="GDH" width="10" textAlign="center"/>
				<mx:DataGridColumn headerText="X_坐标(起标高)" dataField="XZB" width="23" textAlign="center"/>
				<mx:DataGridColumn headerText="Y_坐标(止标高)" dataField="YZB" width="23" textAlign="center"/>
				<mx:DataGridColumn headerText="矿体标识" dataField="KTBS" width="18" textAlign="center"/>
				<mx:DataGridColumn headerText="性质" dataField="XZ" width="10" textAlign="center"/>
		</mx:columns>
	</mx:DataGrid>

PrintDataGrid是分页打印不可缺少的部分。

时间: 2024-10-26 15:19:20

flex 分页打印表格功能的相关文章

Vue.js 实践(2):实现多条件筛选、搜索、排序及分页的表格功能

与上周的第一篇实践教程一样,在这篇文章中,我将继续从一种常见的功能--表格入手,展示Vue.js中的一些优雅特性.同时也将对filter功能与computed属性进行对比,说明各自的适用场景,也为vue2.0版本中即将删除的部分filter功能做准备. 需求分析 还是先从需求入手,想想实现这样一个功能需要注意什么.大致流程如何.有哪些应用场景. 表格本身是一种非常常用的组件,用于展示一些复杂的数据时表现很好. 当数据比较多时,我们需要提供一些筛选条件,让用户更快列出他们关注的数据. 除了预设的一

Excel表格从指定部分重新分页打印的两种方法

Excel表格现在已经成为了一个极其重要的办公工具,尤其是在数据处理方面,它可以进行各种数据的处理.统计分析和辅助决策操作,但是在日常工作中我们经常对一些功能无从下手,例如在进行表格内容打印时,需要将其中内容从某行开始从新的一张纸继续打印,但是往往会发现内容会连续打印,保证每一页都不留空白.下面就通过具体的例子教大家如何让Excel表格内容从指定部分重新分页固定打印. Excel表格从指定部分重新分页打印的方法一 1.如图所示,是一份共10页的表格文档,每一页均是连续打印的,现假设需要让文档从第

arcgis for flex api version3.7 教程:10.打印服务功能简介

高质量的打印功能是arcgis server 10.1的新特性功能.arcgis api for flex在3.x版本之前使用的是flex sdk基本的打印功能.而完全的在线制图打印功能需要web应用来实现. arcgis api for flex 高级打印功能是通过printtask类来实现的.该类通过arcgis 10.1版本的export web map GP服务来实现,可以进行配置,提供输出设置,可以是PDF,PNG,SVG. 在作用GP服务之前,需要启动arcgis 10.1打印服务(

使用ScriptX控件实现IE浏览器分页打印功能

之前讲过js调用ie浏览器自带打印的用法,今天讲使用插件的方式.浏览器自带打印不能控制页边距.页眉页脚等选项,尤其是如果分页打印的话,无法自动将前一页标题带到本页,所以不适用多页打印的功能.使用ScriptX控件可以完美解决分页打印的问题,虽然这个插件是收费的,但是免费的开放的功能已经足够用了. 首先下载这个插件,双击执行这个文件,然后一路next,安装完成. 在文档中添加如下代码. 1 <OBJECT classid="CLSID:1663ED61-23EB-11D2-B92F-0080

flex布局构建大屏框架并支持翻页动画、滚动表格功能

本文将利用flex属性构建大屏可视化界面.界面主要分标题栏.工具栏.数据可视化窗口.其中,翻页动画以及滚动表格功能分别分布在数据可视化界面两侧. 鼠标点击标题,可看到左侧窗口翻转动画: 整体布局效果图: 滚动列表效果图及核心代码: var myH = $(".tableBoy").height() + 10;//获取容器高度 确定可视区域 $(".tableBoy").css({ 'height': myH + "px", "overf

Flex 自定义打印控件编写

打印历来是web应用一个比较棘手的问题,幸好flex web应用是运行在flash player上的,flash player可以访问打印机,所以flex 应用可以实现比较强大的打印功能.Flex 自身提供的printjob.flexprintjob相对来说用起来不是很方便,对于有严格纸张设置.翻页等打印需求,略显功能不足,因此需要基于printjob或flexprintjob来完善flex的打印功能,及自定义打印控件. 本控件核心为: 1)PrintManager,打印控制核心类 2)IPri

js实现网页打印分页打印

web打印思路:html页面本身带有打印功能window.print() 但是在打印时又不能word模板的要求来打印不能满足打印需求.同时我们打印的数据有时候是动态变化的需要按模板来打印我的处理方式是:1.按照word模板设计一个html页面模板,html页面包含了你所要输出的标签 例如:{名字}{时间} 打印区域,不打印区域,分页标签等 2.编写一个公用的打印类,传入参数使按照模板生成相应的数据,生成一个html页并显示. 3.打印 第一种方法:指定不打印区域比如页面的打印按钮等 使用CSS,

js打印表格内容

在项目中有时候需要使用到打印报表内容的需求功能,可以利用js实现报表的打印功能.代码如下: //打印表格 function printTable() { var tableToPrint = document.getElementById('printTable');//将要被打印的表格 var newWin= window.open("");//新打开一个空窗口 newWin.document.write(tableToPrint.outerHTML);//将表格添加进新的窗口 ne

小结--通过水晶报表打印表格数据步骤

最近项目用到水晶报表来打印表格数据,现在温故一下: 1.安装CRforVS_13_0水晶报表. 2.在vs2010中创建.xsd 文件,往里面创建一个DataTable,并设置每个字段的数据类型. 3.创建.rpt(报表文件),在里面画要显示的表格,然后绑定数据库字段(右击数据库字段-数据库专家-我的连接-展开树节点找到新建的DataTable)将DataTable中字段拖入表格相应位置. 4.在上层页面的打印事件中New出新建的DataTable,接着将要打印的表格数据(例如:DataGrid