Flex中在DataGrid加载数据时显示Loading...
网络状况是互联网发展与软件发展的一个很大的瓶颈,如果哪天访问网上资源能象访问本地硬盘,或者能象访问内存那样快,那样咱们的计算机以后只需要输入输出设备以及网络设备就可以了,哈哈,这只是一个美好的愿望。
Flex应用在Web开发上,避免不了网络问题,下面的说明如何在加载数据时显示Loading状态,刚刚接触Flex不久,欢迎拍砖。
原理是这样的,首先定义了两一个ViewState,其中一个就是Loading状态,当点击按钮的时候就显示这个Loading视图,直到数据加载完之显示数据的视图。
先看效果图片:
首先,点击了按钮之后就会由于网络问题显示一个遮罩,上面用了一个Label显示Loading...字样,当然这里可以用任何更加漂亮的东西替换,比如GIF的图片。这里的网络问题由于是在自己的机器上测试,是人为造成的,我的服务器代码是使用的JAVA,在服务器上延迟了三秒加载数据。
三秒之后显示:
代码:
<?xml version="1.0" encoding="utf-8"?>
<mx:Application xmlns:mx="http://www.adobe.com/2006/mxml" layout="absolute">
<mx:states>
<!--加载视图,可以自己制作加载画面,
这个例子就只用了一个LABEL表示一下正在加载-->
<!--数据加载成功后的State-->
<mx:State name="ListState">
<mx:AddChild relativeTo="{pl}" position="lastChild">
<mx:Canvas id="can" width="100%" height="100%">
<mx:DataGrid id="dg" horizontalCenter="0" width="100%" height="100%" >
<mx:columns>
<mx:DataGridColumn headerText="Id" dataField="p_id"/>
<mx:DataGridColumn headerText="Title" dataField="p_title"/>
</mx:columns>
&l
相关文档:
. 匹配除换行符"\n"外的任意单个字符。
[] 匹配括号中字符的任意一个。用"-"指示字符的范围。如果第一个字符是抑扬符号"^",那么它的含义变为匹配括号内字符以外援任意字符。
* 匹配前面正则表达式的零次或多次出现。
+ 匹配前面正则表达式的一次或多次出现。
? 匹配前面正则表达 ......
<![CDATA[
Flex中的键盘事件
要在Flex中响应键盘输入,只需注册keyDown事件即可。
<mx:Application xmlns:mx="http://www.adobe.com/2006/mxml" layout="absolute" keyDown="OnKeyDown(event)">
<mx:Script>
......
<?xml version="1.0"?>
<!-- charts/MemoryGraph.mxml -->
<mx:Application xmlns:mx="http://www.adobe.com/2006/mxml"
initialize="initTimer()">
<mx:Script>
<!--[CDATA[
import flash.utils.Timer;
import flash.events.TimerEve ......
<?xml version="1.0"?>
<!-- charts/GradientFills.mxml -->
<mx:Application xmlns:mx="http://www.adobe.com/2006/mxml">
<mx:Script>
<!--[CDATA[
import mx.collections.ArrayCollection;
[Bindable]
public var expenses:ArrayCollection=new Arra ......
<?xml version="1.0"?>
<!-- charts/ColumnWithDropShadow.mxml -->
<mx:Application xmlns:mx="http://www.adobe.com/2006/mxml"
xmlns:flash="flash.filters.*">
<mx:Script>
<!--[CDATA[
import mx.collections.ArrayCollection;
[Bindab ......