printableInvoice.addEventListener(batchGenerated,printableInvoice_batchGeneratedHandler);
导致此错误: 1120:访问未定义的属性batchGenerated。我已经尝试过FlexEvent.batchGenerated和FlashEvent.batchGenerated。
在组件printableInvoice中调度偶数的MetaData和函数是可以的。我将printableInvoice实例化为mxml组件而不是通过action-script它将标签放入mxml行:batchGenerated =“someFunction()”
感谢。
答案 0 :(得分:2)
batchGenerated应该是一个字符串。
答案 1 :(得分:0)
看起来您的应用程序会在生成批处理时调度事件。
我假设你的代码中有一些东西:
dispatchEvent( new BatchEvent("batchGenerated") );
或
dispatchEvent( new BatchEvent(BatchEvent.BATCH_GENERATED) );
第二种方式通常是首选,因为使用变量代替魔术字符串可以为您提供额外的编译时间检查。
事件的第一个必需参数通常是事件的类型 - Event.CHANGE(又名“更改”),FlexEvent.VALUE_COMMIT(又名“valueCommit”)等。
这是事件监听器实际比较的内容。
因此,在上面的事件监听器代码中,您可能希望将该行更改为:
printableInvoice.addEventListener("batchGenerated", printableInvoice_batchGeneratedHandler);
或希望
printableInvoice.addEventListener(BatchEvent.BATCH_GENERATED, printableInvoice_batchGeneratedHandler);
如果您想进一步了解,Flex文档会详细介绍how the event system works,以及如何通过使用Capture,Target和Bubble阶段有效地定位和处理事件。