Flex图表刷新后会触发什么事件

时间:2011-11-22 10:15:53

标签: flex

当为图表组件执行dataprovider.refresh()时,它会重绘图表。

如何确定何时重绘图表?

我希望在图表完全绘制时拍摄一张png屏幕截图。

1 个答案:

答案 0 :(得分:3)

您应该等到图表完成渲染。在执行重绘逻辑的代码执行后,将调度FlexEvent.UPDATE_COMPLETE。您可以在下一个屏幕更新中看到重绘图表。请尝试以下代码:

private function someFunc():void
{
    //YOU'RE HERE BEFORE CALLING REFRESH
    dataprovider.refresh();
    chart.addEventListener(FlexEvent.UPDATE_COMPLETE, onUpdate);
}

private function onUpdate(event:FlexEvent):void
{
    chart.removeEventListener(FlexEvent.UPDATE_COMPLETE, onUpdate);
    callLater(takeScreenshot);
}

private function takeScreenshot():void
{
    //TAKE SCREENSHOT LOGIC HERE
}