FlashSwing推出的List 组件

List 组件是一个可滚动的单选或多选列表框。

List 组件使用基于零的索引,其中索引为 0 的项目就是显示在顶端的项目。当使用 List 类的方法和属性添加、删除或替换列表项时,您可能需要指定该列表项的索引。

在单击列表或按 Tab 键切换到列表时,列表获得焦点,然后您可使用以下键控制它:


[img]http://dl.iteye.com/upload/attachment/0076/5094/c946d3c0-cc30-3a39-8629-1700c50d3237.jpg[/img]


注意 Page Up 键和 Page Down 键使用的页的大小比可以显示的项数少一项。例如,在一个十行的下拉列表中向下翻页,将会依次显示第 0-9 项、第 9-18 项、第 18-27 项等等,每页都会有一个重叠项

以下示例演示列表的属性,以及监听用户交互操作的结果。
从"库"面板中拖动相关组件到舞台(或直接通过 ActionScript 代码创建组件实例),并对实例命名。

在主时间轴中选择第一帧,打开"动作"面板,然后输入以下代码:

import flash.events.Event;

my_list.addEventListener(Event.CHANGE, function(evt:Event){
selectedIndex_txt.text = my_list.getSelectedIndex().toString();
selectedIndices_txt.text = "[" + my_list.getSelectedIndices() + "]";
});
my_list.addItem({label:"Sunday",data:0});
my_list.addItem({label:"Monday",data:1});
my_list.addItem({label:"Tuesday",data:2});
my_list.addItem({label:"Wednesday",data:3});
my_list.addItem({label:"Thursday",data:4});
my_list.addItem({label:"Friday",data:5});
my_list.addItem({label:"Saturday",data:6});


[img]http://dl.iteye.com/upload/attachment/0076/5096/5da53a2d-e72a-3fa4-b0d5-b26f5b5c15d0.jpg[/img]

通过自定义 CellRenderer 创建行高/宽不固定的列表。
首先,创建自定义单元格渲染器 MultiLineCellRenderer 类(继承于 ListCellRenderer)。

package {
import flash.text.TextFieldAutoSize;
public class MultiLineCellRenderer extends ListCellRenderer {
public override function getAutoSize():Boolean {
return true;
}
public override function repaint():void {
textField.autoSize = TextFieldAutoSize.LEFT;
textField.width = _width - textField.x * 2;
textField.htmlText = getLabel();
textField.textColor = getData().data;
skin.width = _width;
skin.height = textField.y * 2 + textField.height;
}
}
}
同上例,在主时间轴中选择第一帧,打开"动作"面板,然后输入以下代码:

my_list.setCellRenderer(MultiLineCellRenderer);
my_list.addItem({label:"Brown, 0xA52A2A",data:0xA52A2A});
my_list.addItem({label:"DarkSlateGray, 0x2F4F4F",data:0x2F4F4F});
my_list.addItem({label:"MediumAquamarine, 0x66CDAA",data:0x66CDAA});
my_list.addItem({label:"DeepSkyBlue, 0x00BFFF",data:0x00BFFF});
my_list.addItem({label:"MediumVioletRed, 0xC71585",data:0xC71585});
my_list.addItem({label:"Purple, 0x800080",data:0x800080});
my_list.addItem({label:"YellowGreen, 0x9ACD32",data:0x9ACD32});


[img]http://dl.iteye.com/upload/attachment/0076/5099/da2f7559-2454-3efc-9ea6-fcbc155ca393.jpg[/img]

具体参考资料来源地:http://www.shinater.com/FlashSwing/Help/List.html
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值