首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > 媒体动画 > flex >

如何样 实现Flex 动态调用.net 中的数据,然后绑定到Flex中的<mx:PieChart 中

2013-01-08 
怎么样 实现Flex动态调用.net 中的数据,然后绑定到Flex中的mx:PieChart 中怎么样 实现Flex动态调用.net

怎么样 实现Flex 动态调用.net 中的数据,然后绑定到Flex中的<mx:PieChart 中
怎么样 实现Flex   动态调用.net 中的数据,然后绑定到Flex中的<mx:PieChart 中
[解决办法]
我用的是 JSON数据和Java,其实和.net一样

使用JSON需要下载as3corelib


<?xml version="1.0" encoding="utf-8"?>
<mx:Application xmlns:mx="http://www.adobe.com/2006/mxml" layout="absolute" creationComplete="getChartData.send()">
<mx:Script>
<![CDATA[
import mx.collections.ArrayCollection;
import mx.rpc.events.ResultEvent;
import com.adobe.serialization.json.JSON;

[Bindable]
var ac:ArrayCollection;

private function onJSONLoad(event:ResultEvent):void {
                 var rawData:String = String(event.result); 
                 var arr:Array = (JSON.decode(rawData) as Array);
                 ac = new ArrayCollection(arr); 
}
]]>
</mx:Script>
<mx:PieChart x="41" y="79" id="piechart1" width="189" height="189" showDataTips="true"
 dataProvider="{ac}">
<mx:series>
<mx:PieSeries displayName="Series 1" field="value" labelPosition="insideWithCallout"/>
</mx:series>
</mx:PieChart>
<mx:Legend dataProvider="{piechart1}" />
<mx:HTTPService id="getChartData" url="http://localhost:8080/pm/test/getdata.jsp"
 useProxy="false" result="onJSONLoad(event)"/>
</mx:Application>


getdata.jsp

<%@page contentType="text/html" pageEncoding="UTF-8"%>
<%
    String JSONData = "[{"title": "测试1", "value": "100"},{"title": "测试2", "value": "40"},{"title": "测试3", "value": "10"}]";
    out.print(JSONData);
%>

[解决办法]
试试动态绑定数据源
<mx:Legend id="legend " dataProvider="{piechart1}" /> 
private function onJSONLoad(event:ResultEvent):void { 
                var rawData:String = String(event.result); 
                var arr:Array = (JSON.decode(rawData) as Array); 
                ac = new ArrayCollection(arr); 

piechart1.dataProvider=ac;
legend. dataProvider=piechart1;

            }   




    

热点排行