maasss18
11-15-2008, 05:31 AM
I'm having trouble adding my items to Array Collection called newDataProviderAC. And newDataProviderAC has to be the ArrayCollection for the lineChart called myChart.
The function addData is running with a timer, so every 0.5secs the line will interpolate and form the next point depending on the HSlider.
The data for the corresponding Renderer is stored in the TestVarItemRenderer in _varRendererCollection
The linechart is hardcoded with id="myChart"
When i run the program it's gives me an error
Main Thread (Suspended: TypeError: Error #1009: Cannot access a property or method of a null object reference.)
Components::TestArea/addData
flash.utils::Timer/_timerDispatch [no source]
flash.utils::Timer/tick [no source]
Here are my codes
[Bindable]
public var ItemVar:TestVarItemRenderer;
[Bindable]
public var newDataProviderAC:ArrayCollection;
[Bindable]
public var newSeriesArray:Array;
[Bindable]
public var newSeries:LineSeries;
private function addData(e:Event):void
{
myChart.dataProvider=newDataProviderAC;
myChart.series= newSeriesArray;
legend.dataProvider=myChart;
for each(var variableItem:TestVarItemRenderer in _varRendererCollection)
{
newSeries = new LineSeries();
trace("creates newSeries");
newSeries.yField=""+variableItem._data.varName;
trace("adds variable name to new series yField");
newSeries.displayName=""+variableItem._data.varName;
trace("adds display name");
newDataProviderAC.addItem({(variableItem._data.var Name):variableItem.HS.value});
trace("adds item to newDPAC")
newSeriesArray.push(newSeries);
}
}
The function addData is running with a timer, so every 0.5secs the line will interpolate and form the next point depending on the HSlider.
The data for the corresponding Renderer is stored in the TestVarItemRenderer in _varRendererCollection
The linechart is hardcoded with id="myChart"
When i run the program it's gives me an error
Main Thread (Suspended: TypeError: Error #1009: Cannot access a property or method of a null object reference.)
Components::TestArea/addData
flash.utils::Timer/_timerDispatch [no source]
flash.utils::Timer/tick [no source]
Here are my codes
[Bindable]
public var ItemVar:TestVarItemRenderer;
[Bindable]
public var newDataProviderAC:ArrayCollection;
[Bindable]
public var newSeriesArray:Array;
[Bindable]
public var newSeries:LineSeries;
private function addData(e:Event):void
{
myChart.dataProvider=newDataProviderAC;
myChart.series= newSeriesArray;
legend.dataProvider=myChart;
for each(var variableItem:TestVarItemRenderer in _varRendererCollection)
{
newSeries = new LineSeries();
trace("creates newSeries");
newSeries.yField=""+variableItem._data.varName;
trace("adds variable name to new series yField");
newSeries.displayName=""+variableItem._data.varName;
trace("adds display name");
newDataProviderAC.addItem({(variableItem._data.var Name):variableItem.HS.value});
trace("adds item to newDPAC")
newSeriesArray.push(newSeries);
}
}