- 论坛徽章:
- 0
|
帮朋友做个东西,使用Flex绘制动态曲线,ArrayCollection中有数据,但曲线绘制不了
因为是第一次用flex,自己查不出原因,希望大家帮忙解决下,谢谢。
- <?xml version="1.0"?>
- <!-- Simple example to demonstrate the DateTimeAxis class. -->
- <mx:Application xmlns:mx="http://www.adobe.com/2006/mxml" creationComplete="init()">
-
- <mx:Script>
- <![CDATA[
- import mx.charts.chartClasses.AxisLabelSet;
- import mx.charts.chartClasses.IAxis;
- import mx.collections.ArrayCollection;
- import mx.controls.Alert;
- import mx.formatters.DateFormatter;
- import mx.rpc.events.ResultEvent;
-
- [Bindable]
- public var testDatas:ArrayCollection;
-
- [Bindable]
- private var maxDate:Date;
- [Bindable]
- private var minDate:Date;
-
- private var timer:Timer;
- private var dateFormat:DateFormatter = new DateFormatter();
- //private var dateVar:Date;
- private var dateVar:String;
- private var valueTestValue:Number;
-
- private function init():void {
- dataRequest.send();
- dateFormat.formatString = "HH:NN:SS";
- minDate = new Date();
- var dx:Date = new Date();
- dx.setMinutes(dx.getMinutes()+1, dx.getSeconds(), dx.getMilliseconds());
- maxDate = dx;
-
- testDatas = new ArrayCollection([{date: dateVar, valueTest: valueTestValue} ]);
-
- timer = new Timer(1000);
- timer.addEventListener(TimerEvent.TIMER, dataRequest.send);
- timer.start();
-
- }
-
- private function mylabel(labelValue:Object, previousValue:Object, d:IAxis):String {
- var str:String = dateFormat.format(labelValue);
- return str;
- }
-
-
- private function dataHandler(event:ResultEvent):void{
- var msg:String=event.result.toString();
-
- msg = msg.replace('=', '|');
- msg = msg.replace('&', '|');
- var data:Array = msg.split('|');
- dateVar = data[1];
- valueTestValue = Number(data[3])+ Math.random()*50;
-
- testDatas.addItem({date: dateVar, valueTest: valueTestValue});
- }
-
- ]]>
- </mx:Script>
- <mx:HTTPService id="dataRequest" url="http://www.gold678.com/union/flash/QuoteZhj.asp" result="dataHandler(event);"></mx:HTTPService>
-
-
- <mx:Panel title="DateTimeAxis Example" height="100%" width="100%">
- <mx:LineChart id="mychart" height="100%" width="100%"
- paddingRight="2" paddingLeft="3"
- showDataTips="true" >
-
- <mx:horizontalAxis>
- <mx:DateTimeAxis dataUnits="seconds" interval="1" minimum="{minDate}" maximum="{maxDate}" labelFunction="mylabel" />
- </mx:horizontalAxis>
-
- <mx:verticalAxis>
- <mx:LinearAxis baseAtZero="true" />
- </mx:verticalAxis>
-
- <mx:series>
- <mx:LineSeries yField="valueTest" xField="date" displayName="Price" dataProvider="{this.testDatas}"/>
- </mx:series>
- </mx:LineChart>
- </mx:Panel>
- </mx:Application>
复制代码 |
|