| <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd"><!-- saved from url=(0014)about:internet --><html><head><meta http-equiv="Content-Type" content="text/html; charset=UTF-8"><link rel="stylesheet" href="../../style.css" type="text/css" media="screen"><link rel="stylesheet" href="../../print.css" type="text/css" media="print"><link rel="stylesheet" href="../../override.css" type="text/css"><meta name="keywords" content="FlexPrintJob,mx.printing.FlexPrintJob,FILL_PAGE,MATCH_HEIGHT,MATCH_WIDTH,NONE,SHOW_ALL,allowInteraction,allowInteraction,currentPageHeight,currentPageHeight,currentPageHeight,displayIcons,originalHeight,originalHeight,originalHeight,pageHeight,pageWidth,printAsBitmap,printJob,sizeToPage,sizeToPage,sizeToPage,source,source,validNextPage,validNextPage,validNextPage,validPreviousPage,validPreviousPage,addObject,moveToFirstPage,moveToFirstPage,nextPage,nextPage,nextPage,previousPage,previousPage,send,start"><title>mx.printing.FlexPrintJob</title><script src="../../AC_OETags.js" type="text/javascript"></script></head><body><script language="javascript" type="text/javascript" src="../../asdoc.js"></script><script language="javascript" type="text/javascript" src="../../help.js"></script><script language="javascript" type="text/javascript" src="../../cookies.js"></script><script language="javascript" type="text/javascript"><!-- |
| asdocTitle = 'FlexPrintJob - ApacheFlex API Reference'; |
| var baseRef = '../../'; |
| window.onload = configPage; |
| --></script> |
| <script type="text/javascript"> |
| scrollToNameAnchor(); |
| </script><table class="titleTable" cellpadding="0" cellspacing="0" id="titleTable" style="display:none"><tr><td class="titleTableTitle" align="left">Apache Flex 4.16.1 API Reference </td><td class="titleTableTopNav" align="right"><a href="../../package-summary.html" onclick="loadClassListFrame('../../all-classes.html')">All Packages</a> | <a href="../../class-summary.html" onclick="loadClassListFrame('../../all-classes.html')">All Classes</a> | <a href="../../all-index-A.html" onclick="loadClassListFrame('../../index-list.html')">Index</a> | <a id="framesLink1" href="../../index.html?mx/printing/FlexPrintJob.html&mx/printing/class-list.html">Frames</a><a id="noFramesLink1" style="display:none" href="" onclick="parent.location=document.location"> No Frames </a></td><td class="titleTableLogo" align="right" rowspan="3"><img src="../../images/logo.jpg" class="logoImage" alt="AdobeLogo" title="AdobeLogo"></td></tr><tr class="titleTableRow2"><td class="titleTableSubTitle" id="subTitle" align="left">FlexPrintJob</td><td class="titleTableSubNav" id="subNav" align="right"><a href="#propertySummary">Properties</a> | <a href="#methodSummary">Methods</a> | <a href="#includeExamplesSummary">Examples</a></td></tr><tr class="titleTableRow3"><td colspan="3"> </td></tr></table><script language="javascript" type="text/javascript" xml:space="preserve"> |
| <!-- |
| |
| if (!isEclipse() || window.name != ECLIPSE_FRAME_NAME) {titleBar_setSubTitle("FlexPrintJob"); titleBar_setSubNav(false,true,false,false,false,false,false,false,true,true,false ,false,false,false,false,false);} |
| --> |
| </script><div xmlns:fn="http://www.w3.org/2005/xpath-functions" class="MainContent"><table class="classHeaderTable" cellpadding="0" cellspacing="0"><tr><td class="classHeaderTableLabel">Package</td><td><a href="package-detail.html" onclick="javascript:loadClassListFrame('class-list.html')">mx.printing</a></td></tr><tr><td class="classHeaderTableLabel">Class</td><td class="classSignature">public class FlexPrintJob</td></tr><tr><td class="classHeaderTableLabel">Inheritance</td><td class="inheritanceList">FlexPrintJob <img src="../../images/inherit-arrow.gif" title="Inheritance" alt="Inheritance" class="inheritArrow"> Object</td></tr></table><p></p><table cellpadding="0" cellspacing="0" border="0"><tr><td style="white-space:nowrap" valign="top"><b> Language Version : </b></td><td>ActionScript 3.0</td></tr></table><table cellpadding="0" cellspacing="0" border="0"><tr><td style="white-space:nowrap" valign="top"><b> Product Version : </b></td><td>Flex 3</td></tr></table><table cellpadding="0" cellspacing="0" border="0"><tr><td style="white-space:nowrap" valign="top"><b> Runtime Versions : </b></td><td>Flash Player 9, AIR 1.1</td></tr></table><p></p><p></p><p></p><p></p> |
| The FlexPrintJob class is a wrapper for the flash.printing.PrintJob class. |
| It supports automatically slicing and paginating the output on multilple pages, |
| and scaling the grid contents to fit the printer's page size. |
| <p></p><p><a href="#includeExamplesSummary">View the examples</a></p><br/><hr></div><a name="propertySummary"></a><div class="summarySection"><div class="summaryTableTitle">Public Properties</div><table cellspacing="0" cellpadding="3" class="summaryTable " id="summaryTableProperty"><tr><th> </th><th colspan="2">Property</th><th class="summaryTableOwnerCol">Defined By</th></tr><tr class=""><td class="summaryTablePaddingCol"> </td><td class="summaryTableInheritanceCol"> </td><td class="summaryTableSignatureCol"><a href="#pageHeight" class="signatureLink">pageHeight</a> : Number<div class="summaryTableDescription">[read-only] |
| The height of the printable area on the printer page; |
| it does not include any user-set margins.</div></td><td class="summaryTableOwnerCol">FlexPrintJob</td></tr><tr class=""><td class="summaryTablePaddingCol"> </td><td class="summaryTableInheritanceCol"> </td><td class="summaryTableSignatureCol"><a href="#pageWidth" class="signatureLink">pageWidth</a> : Number<div class="summaryTableDescription">[read-only] |
| The width of the printable area on the printer page; |
| it does not include any user-set margins.</div></td><td class="summaryTableOwnerCol">FlexPrintJob</td></tr><tr class=""><td class="summaryTablePaddingCol"> </td><td class="summaryTableInheritanceCol"> </td><td class="summaryTableSignatureCol"><a href="#printAsBitmap" class="signatureLink">printAsBitmap</a> : Boolean<div class="summaryTableDescription"> |
| Specifies whether to print the job content as a bitmap (true) |
| or in vector format (false).</div></td><td class="summaryTableOwnerCol">FlexPrintJob</td></tr><tr class=""><td class="summaryTablePaddingCol"> </td><td class="summaryTableInheritanceCol"> </td><td class="summaryTableSignatureCol"><a href="#printJob" class="signatureLink">printJob</a> : PrintJob<div class="summaryTableDescription">[read-only] |
| The printJob property; |
| |
| </div></td><td class="summaryTableOwnerCol">FlexPrintJob</td></tr></table></div><a name="methodSummary"></a><div class="summarySection"><div class="summaryTableTitle">Public Methods </div><table cellspacing="0" cellpadding="3" class="summaryTable " id="summaryTableMethod"><tr><th> </th><th colspan="2">Method</th><th class="summaryTableOwnerCol">Defined By</th></tr><tr class=""><td class="summaryTablePaddingCol"> </td><td class="summaryTableInheritanceCol"> </td><td class="summaryTableSignatureCol"><div class="summarySignature"><a href="#FlexPrintJob()" class="signatureLink">FlexPrintJob</a>()</div><div class="summaryTableDescription"> |
| Constructor.</div></td><td class="summaryTableOwnerCol">FlexPrintJob</td></tr><tr class=""><td class="summaryTablePaddingCol"> </td><td class="summaryTableInheritanceCol"> </td><td class="summaryTableSignatureCol"><div class="summarySignature"><a href="#addObject()" class="signatureLink">addObject</a>(obj:<a href="../../mx/core/IUIComponent.html">IUIComponent</a>, scaleType:String = matchWidth):void</div><div class="summaryTableDescription"> |
| Adds a UIComponent object to the list of objects being printed.</div></td><td class="summaryTableOwnerCol">FlexPrintJob</td></tr><tr class=""><td class="summaryTablePaddingCol"> </td><td class="summaryTableInheritanceCol"> </td><td class="summaryTableSignatureCol"><div class="summarySignature"><a href="#send()" class="signatureLink">send</a>():void</div><div class="summaryTableDescription"> |
| Sends the added objects to the printer to start printing.</div></td><td class="summaryTableOwnerCol">FlexPrintJob</td></tr><tr class=""><td class="summaryTablePaddingCol"> </td><td class="summaryTableInheritanceCol"> </td><td class="summaryTableSignatureCol"><div class="summarySignature"><a href="#start()" class="signatureLink">start</a>():Boolean</div><div class="summaryTableDescription"> |
| Initializes the PrintJob object.</div></td><td class="summaryTableOwnerCol">FlexPrintJob</td></tr></table></div><script language="javascript" type="text/javascript"><!-- |
| showHideInherited(); |
| --></script><div class="MainContent"><div class="detailSectionHeader">Property Detail</div><a name="propertyDetail"></a><a name="pageHeight"></a><table class="detailHeader" cellpadding="0" cellspacing="0"><tr><td class="detailHeaderName">pageHeight</td><td class="detailHeaderType">property</td></tr></table><div class="detailBody"><code>pageHeight:Number</code> [read-only] <p></p><table cellpadding="0" cellspacing="0" border="0"><tr><td style="white-space:nowrap" valign="top"><b> Language Version : </b></td><td>ActionScript 3.0</td></tr></table><table cellpadding="0" cellspacing="0" border="0"><tr><td style="white-space:nowrap" valign="top"><b> Product Version : </b></td><td>Flex 3</td></tr></table><table cellpadding="0" cellspacing="0" border="0"><tr><td style="white-space:nowrap" valign="top"><b> Runtime Versions : </b></td><td>Flash Player 9, AIR 1.1</td></tr></table><p></p><p></p><p> |
| The height of the printable area on the printer page; |
| it does not include any user-set margins. |
| It is set after start() method returns. |
| |
| </p><br/><span class="label"> Implementation </span><br/><code> public function get pageHeight():Number</code><br/></div><a name="propertyDetail"></a><a name="pageWidth"></a><table class="detailHeader" cellpadding="0" cellspacing="0"><tr><td class="detailHeaderName">pageWidth</td><td class="detailHeaderType">property</td><td class="detailHeaderRule"> </td></tr></table><div class="detailBody"><code>pageWidth:Number</code> [read-only] <p></p><table cellpadding="0" cellspacing="0" border="0"><tr><td style="white-space:nowrap" valign="top"><b> Language Version : </b></td><td>ActionScript 3.0</td></tr></table><table cellpadding="0" cellspacing="0" border="0"><tr><td style="white-space:nowrap" valign="top"><b> Product Version : </b></td><td>Flex 3</td></tr></table><table cellpadding="0" cellspacing="0" border="0"><tr><td style="white-space:nowrap" valign="top"><b> Runtime Versions : </b></td><td>Flash Player 9, AIR 1.1</td></tr></table><p></p><p></p><p> |
| The width of the printable area on the printer page; |
| it does not include any user-set margins. |
| This property is set after <code>start()</code> method returns. |
| |
| </p><br/><span class="label"> Implementation </span><br/><code> public function get pageWidth():Number</code><br/></div><a name="propertyDetail"></a><a name="printAsBitmap"></a><table class="detailHeader" cellpadding="0" cellspacing="0"><tr><td class="detailHeaderName">printAsBitmap</td><td class="detailHeaderType">property</td><td class="detailHeaderRule"> </td></tr></table><div class="detailBody"><code>printAsBitmap:Boolean</code><p></p><table cellpadding="0" cellspacing="0" border="0"><tr><td style="white-space:nowrap" valign="top"><b> Language Version : </b></td><td>ActionScript 3.0</td></tr></table><table cellpadding="0" cellspacing="0" border="0"><tr><td style="white-space:nowrap" valign="top"><b> Product Version : </b></td><td>Flex 3</td></tr></table><table cellpadding="0" cellspacing="0" border="0"><tr><td style="white-space:nowrap" valign="top"><b> Runtime Versions : </b></td><td>Flash Player 9, AIR 1.1</td></tr></table><p></p><p></p><p> |
| Specifies whether to print the job content as a bitmap (<code>true</code>) |
| or in vector format (<code>false</code>). |
| Printing as a bitmap supports output that includes a bitmap image with |
| alpha transparency or color effects. |
| If the content does not include any bitmap images with |
| alpha transparency or color effects, you can print in higher quality |
| vector format by setting the <code>printAsBitmap</code> property to |
| <code>false</code>. |
| |
| </p><p> The default value is <code>true</code>.</p><br/><span class="label"> Implementation </span><br/><code> public function get printAsBitmap():Boolean</code><br/><code> public function set printAsBitmap(value:Boolean):void</code><br/></div><a name="propertyDetail"></a><a name="printJob"></a><table class="detailHeader" cellpadding="0" cellspacing="0"><tr><td class="detailHeaderName">printJob</td><td class="detailHeaderType">property</td><td class="detailHeaderRule"> </td></tr></table><div class="detailBody"><code>printJob:PrintJob</code> [read-only] <p></p><table cellpadding="0" cellspacing="0" border="0"><tr><td style="white-space:nowrap" valign="top"><b> Language Version : </b></td><td>ActionScript 3.0</td></tr></table><table cellpadding="0" cellspacing="0" border="0"><tr><td style="white-space:nowrap" valign="top"><b> Product Version : </b></td><td>Flex 4.9</td></tr></table><table cellpadding="0" cellspacing="0" border="0"><tr><td style="white-space:nowrap" valign="top"><b> Runtime Versions : </b></td><td>Flash Player 9, AIR 1.1</td></tr></table><p></p><p></p><p> |
| The printJob property; |
| |
| </p><br/><span class="label"> Implementation </span><br/><code> public function get printJob():PrintJob</code><br/></div><a name="constructorDetail"></a><div class="detailSectionHeader">Constructor Detail</div><a name="FlexPrintJob()"></a><table class="detailHeader" cellpadding="0" cellspacing="0"><tr><td class="detailHeaderName">FlexPrintJob</td><td class="detailHeaderParens">()</td><td class="detailHeaderType">Constructor</td></tr></table><div class="detailBody"><code>public function FlexPrintJob()</code><p></p><table cellpadding="0" cellspacing="0" border="0"><tr><td style="white-space:nowrap" valign="top"><b> Language Version : </b></td><td>ActionScript 3.0</td></tr></table><table cellpadding="0" cellspacing="0" border="0"><tr><td style="white-space:nowrap" valign="top"><b> Product Version : </b></td><td>Flex 3</td></tr></table><table cellpadding="0" cellspacing="0" border="0"><tr><td style="white-space:nowrap" valign="top"><b> Runtime Versions : </b></td><td>Flash Player 9, AIR 1.1</td></tr></table><p></p><p> |
| Constructor. |
| |
| </p></div><a name="methodDetail"></a><div class="detailSectionHeader">Method Detail</div><a name="addObject()"></a><a name="addObject(mx.core.IUIComponent,String)"></a><table class="detailHeader" cellpadding="0" cellspacing="0"><tr><td class="detailHeaderName">addObject</td><td class="detailHeaderParens">()</td><td class="detailHeaderType">method</td></tr></table><div class="detailBody"><code> public function addObject(obj:<a href="../../mx/core/IUIComponent.html">IUIComponent</a>, scaleType:String = matchWidth):void</code><p></p><table cellpadding="0" cellspacing="0" border="0"><tr><td style="white-space:nowrap" valign="top"><b> Language Version : </b></td><td>ActionScript 3.0</td></tr></table><table cellpadding="0" cellspacing="0" border="0"><tr><td style="white-space:nowrap" valign="top"><b> Product Version : </b></td><td>Flex 3</td></tr></table><table cellpadding="0" cellspacing="0" border="0"><tr><td style="white-space:nowrap" valign="top"><b> Runtime Versions : </b></td><td>Flash Player 9, AIR 1.1</td></tr></table><p></p><p></p><p> |
| Adds a UIComponent object to the list of objects being printed. |
| Call this method after the <code>start()</code> method returns. |
| Each call to this method starts a new page, so you should format |
| your objects in page-sized chunks. |
| You can use the PrintDataGrid class to span a data grid across |
| multiple pages. |
| |
| </p><p><span class="label"> Parameters </span><table cellpadding="0" cellspacing="0" border="0"><tr><td width="20px"></td><td><code><span class="label">obj</span>:<a href="../../mx/core/IUIComponent.html">IUIComponent</a></code> — The Object to be printed. |
| |
| </td></tr><tr><td class="paramSpacer"> </td></tr><tr><td width="20px"></td><td><code><span class="label">scaleType</span>:String</code> (default = <code>matchWidth</code>)<code></code> — The scaling technique to use to control how the |
| object fits on one or more printed pages. |
| Must be one of the constant values defined in the FlexPrintJobScaleType |
| class. |
| |
| </td></tr></table></p><p><span class="label">See also</span></p><div class="seeAlso"><a href="PrintDataGrid.html" target="">PrintDataGrid</a><br/><a href="FlexPrintJobScaleType.html" target="">FlexPrintJobScaleType</a></div></div><a name="send()"></a><table class="detailHeader" cellpadding="0" cellspacing="0"><tr><td class="detailHeaderName">send</td><td class="detailHeaderParens">()</td><td class="detailHeaderType">method</td><td class="detailHeaderRule"> </td></tr></table><div class="detailBody"><code> public function send():void</code><p></p><table cellpadding="0" cellspacing="0" border="0"><tr><td style="white-space:nowrap" valign="top"><b> Language Version : </b></td><td>ActionScript 3.0</td></tr></table><table cellpadding="0" cellspacing="0" border="0"><tr><td style="white-space:nowrap" valign="top"><b> Product Version : </b></td><td>Flex 3</td></tr></table><table cellpadding="0" cellspacing="0" border="0"><tr><td style="white-space:nowrap" valign="top"><b> Runtime Versions : </b></td><td>Flash Player 9, AIR 1.1</td></tr></table><p></p><p></p><p> |
| Sends the added objects to the printer to start printing. |
| Call this method after you have used the <code>addObject()</code> |
| method to add the print pages. |
| |
| </p></div><a name="start()"></a><table class="detailHeader" cellpadding="0" cellspacing="0"><tr><td class="detailHeaderName">start</td><td class="detailHeaderParens">()</td><td class="detailHeaderType">method</td><td class="detailHeaderRule"> </td></tr></table><div class="detailBody"><code> public function start():Boolean</code><p></p><table cellpadding="0" cellspacing="0" border="0"><tr><td style="white-space:nowrap" valign="top"><b> Language Version : </b></td><td>ActionScript 3.0</td></tr></table><table cellpadding="0" cellspacing="0" border="0"><tr><td style="white-space:nowrap" valign="top"><b> Product Version : </b></td><td>Flex 3</td></tr></table><table cellpadding="0" cellspacing="0" border="0"><tr><td style="white-space:nowrap" valign="top"><b> Runtime Versions : </b></td><td>Flash Player 9, AIR 1.1</td></tr></table><p></p><p></p><p> |
| Initializes the PrintJob object. |
| Displays the operating system printer dialog to the user. |
| Flex sets the <code>pageWidth</code> and <code>pageHeight</code> |
| properties after this call returns. |
| </p><p></p><span class="label">Returns</span><table cellpadding="0" cellspacing="0" border="0"><tr><td width="20"></td><td><code>Boolean</code> — <code>true</code> if the user clicks OK |
| when the print dialog box appears, or <code>false</code> if the user |
| clicks Cancel or if an error occurs. |
| |
| </td></tr></table></div><a name="includeExamplesSummary"></a><div class="detailSectionHeader">Examples</div><div class="exampleHeader">FormPrintHeader.mxml</div><div class="detailBody"><div class="listing"><pre><?xml version="1.0"?> |
| <!-- |
| |
| Licensed to the Apache Software Foundation (ASF) under one or more |
| contributor license agreements. See the NOTICE file distributed with |
| this work for additional information regarding copyright ownership. |
| The ASF licenses this file to You under the Apache License, Version 2.0 |
| (the "License"); you may not use this file except in compliance with |
| the License. You may obtain a copy of the License at |
| |
| http://www.apache.org/licenses/LICENSE-2.0 |
| |
| Unless required by applicable law or agreed to in writing, software |
| distributed under the License is distributed on an "AS IS" BASIS, |
| WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. |
| See the License for the specific language governing permissions and |
| limitations under the License. |
| |
| --> |
| <!-- Custom control for the header area of the printed page. --> |
| <s:VGroup name="FormPrintHeader" |
| xmlns:fx="http://ns.adobe.com/mxml/2009" |
| xmlns:s="library://ns.adobe.com/flex/spark" |
| width="60%" |
| horizontalAlign="right" > |
| |
| <s:Label text="This is a placeholder for first page contents"/> |
| |
| </s:VGroup> |
| </pre></div></div><div class="exampleHeader">FormPrintFooter.mxml</div><div class="detailBody"><div class="listing"><pre><?xml version="1.0"?> |
| <!-- |
| |
| Licensed to the Apache Software Foundation (ASF) under one or more |
| contributor license agreements. See the NOTICE file distributed with |
| this work for additional information regarding copyright ownership. |
| The ASF licenses this file to You under the Apache License, Version 2.0 |
| (the "License"); you may not use this file except in compliance with |
| the License. You may obtain a copy of the License at |
| |
| http://www.apache.org/licenses/LICENSE-2.0 |
| |
| Unless required by applicable law or agreed to in writing, software |
| distributed under the License is distributed on an "AS IS" BASIS, |
| WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. |
| See the License for the specific language governing permissions and |
| limitations under the License. |
| |
| --> |
| <!-- Custom control for the footer area of the printed page. --> |
| <s:VGroup name="FormPrintFooter" |
| xmlns:fx="http://ns.adobe.com/mxml/2009" |
| xmlns:s="library://ns.adobe.com/flex/spark" |
| width="60%" |
| horizontalAlign="right" > |
| |
| <!-- Declare and initialize the product total variable. --> |
| <fx:Script> |
| <![CDATA[ |
| [Bindable] |
| public var pTotal:Number = 0; |
| ]]> |
| </fx:Script> |
| |
| <s:Label text="Product Total: {pTotal}"/> |
| |
| </s:VGroup> |
| </pre></div></div><div class="exampleHeader">FormPrintView.mxml</div><div class="detailBody"><div class="listing"><pre><?xml version="1.0"?> |
| <!-- |
| |
| Licensed to the Apache Software Foundation (ASF) under one or more |
| contributor license agreements. See the NOTICE file distributed with |
| this work for additional information regarding copyright ownership. |
| The ASF licenses this file to You under the Apache License, Version 2.0 |
| (the "License"); you may not use this file except in compliance with |
| the License. You may obtain a copy of the License at |
| |
| http://www.apache.org/licenses/LICENSE-2.0 |
| |
| Unless required by applicable law or agreed to in writing, software |
| distributed under the License is distributed on an "AS IS" BASIS, |
| WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. |
| See the License for the specific language governing permissions and |
| limitations under the License. |
| |
| --> |
| <!-- Custom control to print the Halo DataGrid control on multiple pages. --> |
| <s:VGroup name="FormPrintView" |
| xmlns:fx="http://ns.adobe.com/mxml/2009" |
| xmlns:s="library://ns.adobe.com/flex/spark" |
| xmlns:mx="library://ns.adobe.com/flex/mx" |
| xmlns="*"> |
| |
| <fx:Script> |
| <![CDATA[ |
| import mx.core.*; |
| |
| // Declare and initialize the variables used in the component. |
| // The application sets the actual prodTotal value. |
| [Bindable] |
| public var pageNumber:Number = 1; |
| |
| [Bindable] |
| public var prodTotal:Number = 0; |
| |
| // Control the page contents by selectively hiding the header and |
| // footer based on the page type. |
| public function showPage(pageType:String):void { |
| if (pageType == "first" || pageType == "middle") { |
| // Hide the footer. |
| footer.includeInLayout = false; |
| footer.visible = false; |
| } |
| if (pageType == "middle" || pageType == "last") { |
| // The header won't be used again; hide it. |
| header.includeInLayout = false; |
| header.visible = false; |
| } |
| if (pageType == "last") { |
| // Show the footer. |
| footer.includeInLayout = true; |
| footer.visible = true; |
| } |
| //Update the DataGrid layout to reflect the results. |
| validateNow(); |
| } |
| ]]> |
| </fx:Script> |
| |
| <!-- The template for the printed page, with the contents for all pages. --> |
| <s:VGroup width="80%" horizontalAlign="left"> |
| <s:Label text="Page {pageNumber}"/> |
| </s:VGroup> |
| |
| <FormPrintHeader id="header" /> |
| |
| <!-- The data grid. The sizeToPage property is true by default, so the last |
| page has only as many grid rows as are needed for the data. --> |
| <mx:PrintDataGrid id="myDataGrid" width="60%" height="100%"> |
| <!-- Specify the columns to ensure that their order is correct. --> |
| <mx:columns> |
| <mx:DataGridColumn dataField="Index" /> |
| <mx:DataGridColumn dataField="Qty" /> |
| </mx:columns> |
| </mx:PrintDataGrid> |
| |
| <!-- Create a FormPrintFooter control and set its prodTotal variable. --> |
| <FormPrintFooter id="footer" pTotal="{prodTotal}" /> |
| |
| </s:VGroup> |
| </pre></div></div><div class="exampleHeader">PrintDataGridExample.mxml</div><div class="detailBody"><div class="listing"><pre><?xml version="1.0"?> |
| <!-- |
| |
| Licensed to the Apache Software Foundation (ASF) under one or more |
| contributor license agreements. See the NOTICE file distributed with |
| this work for additional information regarding copyright ownership. |
| The ASF licenses this file to You under the Apache License, Version 2.0 |
| (the "License"); you may not use this file except in compliance with |
| the License. You may obtain a copy of the License at |
| |
| http://www.apache.org/licenses/LICENSE-2.0 |
| |
| Unless required by applicable law or agreed to in writing, software |
| distributed under the License is distributed on an "AS IS" BASIS, |
| WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. |
| See the License for the specific language governing permissions and |
| limitations under the License. |
| |
| --> |
| <!-- Main application to print a Halo DataGrid control on multiple pages. --> |
| <s:Application name="PrintDataGridExample.mxml" |
| xmlns:fx="http://ns.adobe.com/mxml/2009" |
| xmlns:s="library://ns.adobe.com/flex/spark" |
| xmlns:mx="library://ns.adobe.com/flex/mx" |
| initialize="initData();"> |
| |
| <fx:Script> |
| <![CDATA[ |
| |
| import mx.printing.*; |
| import mx.collections.ArrayCollection; |
| import FormPrintView; |
| import mx.core.FlexGlobals; |
| |
| // Declare variables and initialize simple variables. |
| [Bindable] |
| public var dgProvider:ArrayCollection; |
| public var footerHeight:Number = 20; |
| public var prodIndex:Number; |
| public var prodTotal:Number = 0; |
| |
| // Data initialization. |
| public function initData():void { |
| // Create the data provider for the DataGrid control. |
| dgProvider = new ArrayCollection; |
| } |
| |
| // Fill the dgProvider ArrayCollection with the specified items. |
| public function setdgProvider(items:int):void { |
| prodIndex=1; |
| dgProvider.removeAll(); |
| for (var z:int=0; z<items; z++) { |
| var prod1:Object = {}; |
| prod1.Qty = prodIndex * 7; |
| prod1.Index = prodIndex++; |
| prodTotal += prod1.Qty; |
| dgProvider.addItem(prod1); |
| } |
| } |
| |
| // The function to print the output. |
| public function doPrint():void { |
| var printJob:FlexPrintJob = new FlexPrintJob(); |
| if (printJob.start()) { |
| // Create a FormPrintView control as a child of the current view. |
| var thePrintView:FormPrintView = new FormPrintView(); |
| FlexGlobals.topLevelApplication.addElement(thePrintView); |
| |
| //Set the print view properties. |
| thePrintView.width=printJob.pageWidth; |
| thePrintView.height=printJob.pageHeight; |
| thePrintView.prodTotal = prodTotal; |
| // Set the data provider of the FormPrintView component's data grid |
| // to be the data provider of the displayed data grid. |
| thePrintView.myDataGrid.dataProvider = myDataGrid.dataProvider; |
| // Create a single-page image. |
| thePrintView.showPage("single"); |
| // If the print image's data grid can hold all the provider's rows, |
| // add the page to the print job. |
| if (!thePrintView.myDataGrid.validNextPage) { |
| printJob.addObject(thePrintView); |
| } |
| // Otherwise, the job requires multiple pages. |
| else { |
| // Create the first page and add it to the print job. |
| thePrintView.showPage("first"); |
| printJob.addObject(thePrintView); |
| thePrintView.pageNumber++; |
| // Loop through the following code until all pages are queued. |
| while (true) { |
| // Move the next page of data to the top of the print grid. |
| thePrintView.myDataGrid.nextPage(); |
| thePrintView.showPage("last"); |
| // If the page holds the remaining data, or if the last page |
| // was completely filled by the last grid data, queue it for printing. |
| // Test if there is data for another PrintDataGrid page. |
| if (!thePrintView.myDataGrid.validNextPage) { |
| // This is the last page; queue it and exit the print loop. |
| printJob.addObject(thePrintView); |
| break; |
| } else { |
| // This is not the last page. Queue a middle page. |
| thePrintView.showPage("middle"); |
| printJob.addObject(thePrintView); |
| thePrintView.pageNumber++; |
| } |
| } |
| } |
| // All pages are queued; remove the FormPrintView control to free memory. |
| FlexGlobals.topLevelApplication.removeElement(thePrintView); |
| } |
| // Send the job to the printer. |
| printJob.send(); |
| } |
| ]]> |
| </fx:Script> |
| |
| <s:Panel title="DataGrid Printing Example" |
| width="75%" height="75%" |
| horizontalCenter="0" verticalCenter="0"> |
| <s:VGroup left="10" right="10" top="10" bottom="10"> |
| <mx:DataGrid id="myDataGrid" dataProvider="{dgProvider}"> |
| <mx:columns> |
| <mx:DataGridColumn dataField="Index"/> |
| <mx:DataGridColumn dataField="Qty"/> |
| </mx:columns> |
| </mx:DataGrid> |
| |
| <s:Label width="100%" color="blue" |
| text="Specify the number of lines and click Fill Grid first. Then you can click Print."/> |
| |
| <s:TextInput id="dataItems" text="35"/> |
| |
| <s:HGroup> |
| <s:Button id="setDP" label="Fill Grid" click="setdgProvider(int(dataItems.text));"/> |
| <s:Button id="printDG" label="Print" click="doPrint();"/> |
| </s:HGroup> |
| </s:VGroup> |
| </s:Panel> |
| |
| </s:Application> |
| </pre></div><script language="javascript" type="text/javascript"><!-- AC_FL_RunContent( "src", "examples/PrintDataGridExample", "width", "100%", |
| "height","400px", "salign", "TL", "id", "example4", "quality", "high", "bgcolor", "", "name", |
| "example4", "flashvars","", "allowScriptAccess","sameDomain", "type", |
| "application/x-shockwave-flash","pluginspage", "http://www.macromedia.com/go/getflashplayer" ); --></script></div><br/><br/><hr><br/><p></p><center class="copyright"><footer>The Apache Software Foundation</footer><br/>Wed Nov 15 2017, 09:50 AM +01:00 </center></div></body></html><!--The Apache Software Foundation<br/>Wed Nov 15 2017, 09:50 AM +01:00 --> |