打印时出错

时间:2011-08-22 10:42:51

标签: flex actionscript-3 flex4

有三个公共变量

public var objPrintJob:FlexPrintJob;
public var objPrintTemplate:canvas;

Fn1的:

objPrintJob = new FlexPrintJob();
if (objPrintJob.start() != true)
{
        printCount--;
        return;
}

启动PrintJob;

Fn2的:

Am adding the Object and calling send for the Print

objPrintJob.addObject(objPrintTemplate, FlexPrintJobScaleType.SHOW_ALL);
objPrintJob.send();

运行期间

它引发错误:

TypeError: Error #1009: Cannot access a property or method of a null object reference.
    at mx.printing::FlexPrintJob/addObject()[E:\dev\4.0.0\frameworks\projects\framework\src\mx\printing\FlexPrintJob.as:252]
    at org.dckap.mafcote.views.mediators::WorkAreaMediator/parseXML()[F:\MafcoteMGP\MafcoteMGP\src\org\dckap\mafcote\views\mediators\WorkAreaMediator.as:3243]
    at org.dckap.mafcote.views.mediators::WorkAreaMediator/onSaveTemplateWithCredits()[F:\MafcoteMGP\MafcoteMGP\src\org\dckap\mafcote\views\mediators\WorkAreaMediator.as:2896]
    at flash.events::EventDispatcher/dispatchEventFunction()
    at flash.events::EventDispatcher/dispatchEvent()
    at mx.core::UIComponent/dispatchEvent()[E:\dev\4.0.0\frameworks\projects\framework\src\mx\core\UIComponent.as:12266]
    at org.dckap.mafcote.views::CreditsShowPanel/okButtonClickHandler()[F:\MafcoteMGP\MafcoteMGP\src\org\dckap\mafcote\views\CreditsShowPanel.mxml:41]
    at org.dckap.mafcote.views::CreditsShowPanel/__btnOk_click()[F:\MafcoteMGP\MafcoteMGP\src\org\dckap\mafcote\views\CreditsShowPanel.mxml:159]

需要帮助......

                } 

2 个答案:

答案 0 :(得分:2)

这必须是你的objPrintTemplate对象为null。错误中的堆栈跟踪显示它在FlexPrintJob/addObject()中出错,这意味着它已进入该方法但未完成执行该方法。由于您发送给它的唯一参数是对象引用和常量值,因此该对象必须为null。

答案 1 :(得分:0)

在你的支持下,我发现了我的解决方案。 谢谢大家。

该对象似乎不为null。 我犯了一个错误,就是我没有在其他任何地方添加对象。 所以print中的addObject()需要systemManager。 如果我没有作为孩子添加,这将为null。

感谢您的支持