Flex List显示格式

本文介绍了一种在Flex应用中实现列表数据项上下移动的方法,通过按钮触发,选中的数据项可在列表中移动而不更改其在数据库中的位置。具体实现了数据的上移和下移功能。

list从数据库里面读出数条数据,现在要对数据进行操作,就是将选中的一行数据,按up按钮,该行数据向上移一个位置,连续按可以一直移到最上面的位 置,上移之后保证选中的还是这条数据,下移也是同样的道理,但是只是画面中数据的移动,并不对数据库操作

<?xml version="1.0"?>
<mx:Application xmlns:mx="http://www.adobe.com/2006/mxml "
width="550" height="400">

<mx:Script>
<![CDATA[
import mx.utils.ObjectUtil;
import mx.collections.*;

[Bindable]
private var dp:ArrayCollection=new ArrayCollection([
{Artist:'Pavement1', Album:'Slanted and Enchanted',
Price:11.99, InStock: true},
{Artist:'Pavement2', Album:'Crooked Rain, Crooked Rain',
Price:10.99, InStock: false},
{Artist:'Pavement3', Album:'Wowee Zowee',
Price:12.99, InStock: true},
{Artist:'Asphalt1', Album:'Brighten the Corners',
Price:11.99, InStock: false},
{Artist:'Asphalt2', Album:'Terror Twilight',
Price:11.99, InStock: true},
{Artist:'Asphalt3', Album:'Buildings Meet the Sky',
Price:14.99, InStock: true},
{Artist:'Other', Album:'Other', Price:5.99, InStock: true}
]);

private function up():void{
if(list.selectedIndex>0){
var i:int=list.selectedIndex;
var tmp:Object=ObjectUtil.copy(list.selectedItem);
var tmpupper:Object=dp.getItemAt(i-1);
dp.setItemAt(tmpupper,i);
dp.setItemAt(tmp,i-1);
list.selectedIndex=i-1;
list.selectedItem=tmp;
}
}
private function down():void{
if (list.selectedIndex<dp.length-1){
var i:int=list.selectedIndex;
var tmp:Object=ObjectUtil.copy(list.selectedItem);
var tmplower:Object=dp.getItemAt(i+1);
dp.setItemAt(tmplower,i);
dp.setItemAt(tmp,i+1);
list.selectedIndex=i+1;
list.selectedItem=tmp;
}
}
]]>
</mx:Script>

<mx:List dataProvider="{dp}" id="list" labelField="Artist"></mx:List>
<mx:Button label="UP" click="{up();}" enabled="{list.selectedItem!=null}"/>
<mx:Button label="DOWN" click="{down();}" enabled="{list.selectedItem!=null}"/>
</mx:Application>

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值