Flex3加载外部数据1
生活随笔
收集整理的這篇文章主要介紹了
Flex3加载外部数据1
小編覺(jué)得挺不錯(cuò)的,現(xiàn)在分享給大家,幫大家做個(gè)參考.
1.加載文本文件中的純文本: LoadData1.mxml <?xml version="1.0" encoding="utf-8"?>
<!--通過(guò)Bind綁定,使用了MXML的HTTPService標(biāo)簽,結(jié)果格式為text文本格式-->
<mx:Application xmlns:mx="http://www.adobe.com/2006/mxml" layout="vertical" creationComplete="txtLoader.send();">
??<mx:Style>
????Application{font-size:12px;}
??</mx:Style>
??<mx:HTTPService id="txtLoader" url="test1.txt" resultFormat="text"/>
??<mx:VBox>
????<mx:Text text="{txtLoader.lastResult}" />
??</mx:VBox>
</mx:Application>
文本文件test1.txt: 這是用于Flex的一段測(cè)試文本 運(yùn)行結(jié)果: 2.這里不是用MXML標(biāo)簽,而采用類 <?xml version="1.0" encoding="utf-8"?>
<!--使用HTTPService類得到同樣的結(jié)果-->
<mx:Application xmlns:mx="http://www.adobe.com/2006/mxml" layout="vertical" creationComplete="loadTxt(event);">
??<mx:Style>
????Application{fontSize:14px;}
??</mx:Style>
??<mx:Script>
????<![CDATA[
??????import mx.rpc.events.ResultEvent;
??????import mx.events.FlexEvent;
??????import mx.rpc.http.HTTPService;
??????private var txtLoader:HTTPService=new HTTPService();
????????
??????//加載文本代碼如下
??????private function loadTxt(evt:FlexEvent):void
??????{
????????txtLoader.url="test1.txt";//文件路徑
????????txtLoader.resultFormat="text";//結(jié)果的格式是純文本
????????txtLoader.addEventListener(ResultEvent.RESULT,resultHandler);
????????
????????txtLoader.send();
??????}
??????private function resultHandler(evt:ResultEvent):void
??????{
????????myTxt.text=evt.target.lastResult;//這里為文本控件賦值
??????}
????]]>
??</mx:Script>
??<mx:VBox>
????<mx:Text id="myTxt"/>
??</mx:VBox>
</mx:Application> 結(jié)果同上。 3.使用URLLoader類加載數(shù)據(jù) <?xml version="1.0" encoding="utf-8"?>
<!--使用URLLoader類從文本文件加載文本數(shù)據(jù)到Flex中,無(wú)法通過(guò)MXML標(biāo)簽使用該類-->
<mx:Application xmlns:mx="http://www.adobe.com/2006/mxml" layout="vertical" creationComplete="loadTxt(event)">
??<mx:Script>
????<![CDATA[
??????import mx.events.FlexEvent;
????????
??????private var loader:URLLoader=new URLLoader();
??????private function loadTxt(evt:FlexEvent):void
??????{
????????loader.addEventListener(Event.COMPLETE,handleData);
????????loader.load(new URLRequest("test1.txt"));
??????}
????????
??????//數(shù)據(jù)加載完畢,為文本賦值
??????private function handleData(evt:Event):void
??????{
????????myTxt.text=evt.target.data;//URLLoader對(duì)象的data域
??????}
????]]>
??</mx:Script>
??<mx:VBox>
????<mx:Text id="myTxt" fontSize="18"/>
??</mx:VBox>
</mx:Application> 結(jié)果同上。 4.加載url編碼值對(duì)數(shù)據(jù): <?xml version="1.0" encoding="utf-8"?>
<!--使用HTTPService標(biāo)簽,加載值對(duì)(url編碼的)到Flex的標(biāo)簽和組合框控件-->
<mx:Application xmlns:mx="http://www.adobe.com/2006/mxml" layout="vertical" creationComplete="svc.send();">
??<mx:Style>
????Application{fontSize:14px;}
??</mx:Style>
??<mx:HTTPService id="svc" url="test2.txt" resultFormat="flashvars"/>
??<mx:HBox>
????<mx:Label text="{svc.lastResult.lbl}"/>
????<mx:ComboBox dataProvider="{svc.lastResult.jobs.split(',')}" />
??</mx:HBox>
</mx:Application> test2.txt: lbl=職位&jobs=網(wǎng)頁(yè)設(shè)計(jì)師,軟件工程師,項(xiàng)目經(jīng)理 結(jié)果: 5.使用HTTPService類加載值對(duì): <?xml version="1.0" encoding="utf-8"?>
<!--使用HTTPService類,加載URL編碼數(shù)據(jù)-->
<mx:Application xmlns:mx="http://www.adobe.com/2006/mxml" layout="vertical" creationComplete="loadVal(event);">
??<mx:Style>
????Application{fontSize:12px;color:#ff0000;}
??</mx:Style>
??<mx:Script>
????<![CDATA[
??????import mx.rpc.events.ResultEvent;
??????import mx.events.FlexEvent;
??????import mx.rpc.http.HTTPService;
??????private var svc:HTTPService=new HTTPService();
??????private function loadVal(evt:FlexEvent):void
??????{
????????svc.url="test2.txt";
????????svc.resultFormat="flashvars";//結(jié)果格式-值對(duì)
????????svc.addEventListener(ResultEvent.RESULT,handleResult);
????????svc.send();
??????}
??????private function handleResult(evt:ResultEvent):void
??????{
????????lbl.text=svc.lastResult.lbl;
????????combox.dataProvider=svc.lastResult.jobs.split(",");
??????}
????]]>
??</mx:Script>
??<mx:HBox>
????<mx:Label id="lbl"/>
????<mx:ComboBox id="combox"/>
??</mx:HBox>
</mx:Application>
結(jié)果: 6.使用URLLoader類加載值對(duì)數(shù)據(jù): <?xml version="1.0" encoding="utf-8"?>
<!--使用URLLoader類,加載URL編碼數(shù)據(jù)-->
<mx:Application xmlns:mx="http://www.adobe.com/2006/mxml" layout="vertical" creationComplete="loadVal(event);">
??<mx:Style>
????Application{font-size:14px;color:green;}
??</mx:Style>
??<mx:Script>
????<![CDATA[
??????import mx.events.FlexEvent;
??????import flash.net.URLLoader;
????????
??????private var loader:URLLoader=new URLLoader();
??????private function loadVal(evt:FlexEvent):void
??????{
????????loader.addEventListener(Event.COMPLETE,handleComplete);
????????loader.load(new URLRequest("test2.txt"));
??????}
??????private function handleComplete(evt:Event):void
??????{
????????var value:URLVariables=new URLVariables(evt.target.data);
????????lbl.text=value.lbl;
????????combox.dataProvider=value.jobs.split(",");
??????}
????]]>
??</mx:Script>
??<mx:HBox>
????<mx:Label id="lbl"/>
????<mx:ComboBox id="combox"/>
??</mx:HBox>
</mx:Application>
結(jié)果:
<!--通過(guò)Bind綁定,使用了MXML的HTTPService標(biāo)簽,結(jié)果格式為text文本格式-->
<mx:Application xmlns:mx="http://www.adobe.com/2006/mxml" layout="vertical" creationComplete="txtLoader.send();">
??<mx:Style>
????Application{font-size:12px;}
??</mx:Style>
??<mx:HTTPService id="txtLoader" url="test1.txt" resultFormat="text"/>
??<mx:VBox>
????<mx:Text text="{txtLoader.lastResult}" />
??</mx:VBox>
</mx:Application>
文本文件test1.txt: 這是用于Flex的一段測(cè)試文本 運(yùn)行結(jié)果: 2.這里不是用MXML標(biāo)簽,而采用類 <?xml version="1.0" encoding="utf-8"?>
<!--使用HTTPService類得到同樣的結(jié)果-->
<mx:Application xmlns:mx="http://www.adobe.com/2006/mxml" layout="vertical" creationComplete="loadTxt(event);">
??<mx:Style>
????Application{fontSize:14px;}
??</mx:Style>
??<mx:Script>
????<![CDATA[
??????import mx.rpc.events.ResultEvent;
??????import mx.events.FlexEvent;
??????import mx.rpc.http.HTTPService;
??????private var txtLoader:HTTPService=new HTTPService();
????????
??????//加載文本代碼如下
??????private function loadTxt(evt:FlexEvent):void
??????{
????????txtLoader.url="test1.txt";//文件路徑
????????txtLoader.resultFormat="text";//結(jié)果的格式是純文本
????????txtLoader.addEventListener(ResultEvent.RESULT,resultHandler);
????????
????????txtLoader.send();
??????}
??????private function resultHandler(evt:ResultEvent):void
??????{
????????myTxt.text=evt.target.lastResult;//這里為文本控件賦值
??????}
????]]>
??</mx:Script>
??<mx:VBox>
????<mx:Text id="myTxt"/>
??</mx:VBox>
</mx:Application> 結(jié)果同上。 3.使用URLLoader類加載數(shù)據(jù) <?xml version="1.0" encoding="utf-8"?>
<!--使用URLLoader類從文本文件加載文本數(shù)據(jù)到Flex中,無(wú)法通過(guò)MXML標(biāo)簽使用該類-->
<mx:Application xmlns:mx="http://www.adobe.com/2006/mxml" layout="vertical" creationComplete="loadTxt(event)">
??<mx:Script>
????<![CDATA[
??????import mx.events.FlexEvent;
????????
??????private var loader:URLLoader=new URLLoader();
??????private function loadTxt(evt:FlexEvent):void
??????{
????????loader.addEventListener(Event.COMPLETE,handleData);
????????loader.load(new URLRequest("test1.txt"));
??????}
????????
??????//數(shù)據(jù)加載完畢,為文本賦值
??????private function handleData(evt:Event):void
??????{
????????myTxt.text=evt.target.data;//URLLoader對(duì)象的data域
??????}
????]]>
??</mx:Script>
??<mx:VBox>
????<mx:Text id="myTxt" fontSize="18"/>
??</mx:VBox>
</mx:Application> 結(jié)果同上。 4.加載url編碼值對(duì)數(shù)據(jù): <?xml version="1.0" encoding="utf-8"?>
<!--使用HTTPService標(biāo)簽,加載值對(duì)(url編碼的)到Flex的標(biāo)簽和組合框控件-->
<mx:Application xmlns:mx="http://www.adobe.com/2006/mxml" layout="vertical" creationComplete="svc.send();">
??<mx:Style>
????Application{fontSize:14px;}
??</mx:Style>
??<mx:HTTPService id="svc" url="test2.txt" resultFormat="flashvars"/>
??<mx:HBox>
????<mx:Label text="{svc.lastResult.lbl}"/>
????<mx:ComboBox dataProvider="{svc.lastResult.jobs.split(',')}" />
??</mx:HBox>
</mx:Application> test2.txt: lbl=職位&jobs=網(wǎng)頁(yè)設(shè)計(jì)師,軟件工程師,項(xiàng)目經(jīng)理 結(jié)果: 5.使用HTTPService類加載值對(duì): <?xml version="1.0" encoding="utf-8"?>
<!--使用HTTPService類,加載URL編碼數(shù)據(jù)-->
<mx:Application xmlns:mx="http://www.adobe.com/2006/mxml" layout="vertical" creationComplete="loadVal(event);">
??<mx:Style>
????Application{fontSize:12px;color:#ff0000;}
??</mx:Style>
??<mx:Script>
????<![CDATA[
??????import mx.rpc.events.ResultEvent;
??????import mx.events.FlexEvent;
??????import mx.rpc.http.HTTPService;
??????private var svc:HTTPService=new HTTPService();
??????private function loadVal(evt:FlexEvent):void
??????{
????????svc.url="test2.txt";
????????svc.resultFormat="flashvars";//結(jié)果格式-值對(duì)
????????svc.addEventListener(ResultEvent.RESULT,handleResult);
????????svc.send();
??????}
??????private function handleResult(evt:ResultEvent):void
??????{
????????lbl.text=svc.lastResult.lbl;
????????combox.dataProvider=svc.lastResult.jobs.split(",");
??????}
????]]>
??</mx:Script>
??<mx:HBox>
????<mx:Label id="lbl"/>
????<mx:ComboBox id="combox"/>
??</mx:HBox>
</mx:Application>
結(jié)果: 6.使用URLLoader類加載值對(duì)數(shù)據(jù): <?xml version="1.0" encoding="utf-8"?>
<!--使用URLLoader類,加載URL編碼數(shù)據(jù)-->
<mx:Application xmlns:mx="http://www.adobe.com/2006/mxml" layout="vertical" creationComplete="loadVal(event);">
??<mx:Style>
????Application{font-size:14px;color:green;}
??</mx:Style>
??<mx:Script>
????<![CDATA[
??????import mx.events.FlexEvent;
??????import flash.net.URLLoader;
????????
??????private var loader:URLLoader=new URLLoader();
??????private function loadVal(evt:FlexEvent):void
??????{
????????loader.addEventListener(Event.COMPLETE,handleComplete);
????????loader.load(new URLRequest("test2.txt"));
??????}
??????private function handleComplete(evt:Event):void
??????{
????????var value:URLVariables=new URLVariables(evt.target.data);
????????lbl.text=value.lbl;
????????combox.dataProvider=value.jobs.split(",");
??????}
????]]>
??</mx:Script>
??<mx:HBox>
????<mx:Label id="lbl"/>
????<mx:ComboBox id="combox"/>
??</mx:HBox>
</mx:Application>
結(jié)果:
轉(zhuǎn)載于:https://blog.51cto.com/xcf007/102134
總結(jié)
以上是生活随笔為你收集整理的Flex3加载外部数据1的全部?jī)?nèi)容,希望文章能夠幫你解決所遇到的問(wèn)題。
- 上一篇: C# Tips 2------ToolS
- 下一篇: Exchange 2007 OWA中出现