Flex List组件实例与删除、添加操作

需积分: 9 6 下载量 170 浏览量 更新于2024-09-16 收藏 2KB TXT 举报
在Flex 3 AS3中,列表组件(List)是创建动态数据驱动界面的关键元素,尤其是在MXML(MXML是一种基于XML的标记语言,用于构建富客户端应用程序)编程中。本示例展示了如何使用`<s:List>`组件来展示和管理一个动态数组(ArrayCollection),并结合了事件处理和效果来实现删除和添加项的功能。 首先,我们从XML声明部分开始,看到 `<s:Application>` 元素定义了一个Spark应用程序的上下文,使用了Flex 3的`spark`和`mx`库。在 `<fx:Script>` 标签内,代码主要定义了两个关键函数:`deleteItem()` 和 `addItem()`。 1. **`deleteItem()` 函数**: - 当用户从列表中选择多个项目时,这个函数负责执行删除操作。首先,通过`selectedItems`属性获取被选中的项目,并将它们存入`toRemove`数组。 - 接着,遍历`toRemove`数组,调用`removeItemAt()`方法从`myDP`(假设是绑定的数据提供者,通常是一个`ArrayCollection`对象)中移除相应的元素。这样,随着项目的删除,列表中的其他项目会自动更新其索引,保持数据的一致性。 2. **`addItem()` 函数**: - 此函数用于向列表中添加新项目。它首先创建一个新的字符串(如 "Z" 加上一个计数器值,`zcount++`),然后根据当前列表长度决定新项目的插入位置。 - 如果列表长度小于或等于3,那么新项目会添加到列表的末尾;如果长度大于3,则添加在第四个位置之后。这确保了新添加的项目总是位于列表的特定位置,提供了一定的视觉结构。 此外,代码中提到了`DefaultListEffect`,这是Flex 3中的一个内置特效,主要用于控制列表项目添加和删除时的动画效果。在这个例子中,没有具体设置动画效果,但可以想象在`addItem()`和`deleteItem()`函数执行后,`DefaultListEffect`可以用来实现淡入淡出、滑动等动态显示效果,提升用户体验。 总结来说,这段代码演示了如何在Flex 3 AS3中使用`<s:List>`组件,结合数据源管理和用户交互(如删除和添加功能),以及如何利用`DefaultListEffect`来增强界面的动态性和美观度。对于初学者或需要处理动态数据列表的开发者来说,这是一个实用的基础示例。
2012-07-17 上传
目录 第 1 章 : 简介 目标读者 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1 系统要求 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1 关于本文档 . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1 印刷惯例 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2 本手册中使用的术语 . . . . . . . . . . . . . . . . . . . . . . . . 2 其他资源 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2 第 2 章 : 关于 ActionScript 3.0 组件 使用组件的优点 . . . . . . . . . . . . . . . . . . . . . . . . . . 3 组件类型 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4 在文档中添加和删除组件 . . . . . . . . . . . . . . . . . . . . . . 5 查找组件的版本 . . . . . . . . . . . . . . . . . . . . . . . . . . 7 ActionScript 3.0 事件处理模型 . . . . . . . . . . . . . . . . . . . 7 一个简单的应用程序 . . . . . . . . . . . . . . . . . . . . . . . . 8 第 3 章 : 使用组件 组件体系结构 . . . . . . . . . . . . . . . . . . . . . . . . . . . 14 使用组件文件 . . . . . . . . . . . . . . . . . . . . . . . . . . . 15 调试组件应用程序 . . . . . . . . . . . . . . . . . . . . . . . . . 17 设置参数和属性 . . . . . . . . . . . . . . . . . . . . . . . . . . 17 库 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 18 调整组件大小 . . . . . . . . . . . . . . . . . . . . . . . . . . . 19 实时预览 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 19 处理事件 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 20 使用显示列表 . . . . . . . . . . . . . . . . . . . . . . . . . . . 21 使用 FocusManager . . . . . . . . . . . . . . . . . . . . . . . . 23 使用基于 List 的组件 . . . . . . . . . . . . . . . . . . . . . . . 24 使用 DataProvider . . . . . . . . . . . . . . . . . . . . . . . . 24 使用 CellRenderer . . . . . . . . . . . . . . . . . . . . . . . . 31 使组件具有辅助功能 . . . . . . . . . . . . . . . . . . . . . . . . 37 第 4 章 : 使用 UI 组件 使用 Button 组件 . . . . . . . . . . . . . . . . . . . . . . . . . 39 使用 CheckBox 组件 . . . . . . . . . . . . . . . . . . . . . . . . 41 使用 ColorPicker 组件 . . . . . . . . . . . . . . . . . . . . . . .43 使用 ComboBox 组件 . . . . . . . . . . . . . . . . . . . . . . . . 45 使用 DataGrid 组件 . . . . . . . . . . . . . . . . . . . . . . . . 48 使用 Label 组件 . . . . . . . . . . . . . . . . . . . . . . . . . 53 使用 List 组件 . . . . . . . . . . . . . . . . . . . . . . . . . . 55 使用 NumericStepper 组件 . . . . . . . . . . . . . . . . . . . . . 59 使用 ProgressBar 组件 . . . . . . . . . . . . . . . . . . . . . . 61 使用 RadioButton 组件 . . . . . . . . . . . . . . . . . . . . . . 66 使用 ScrollPane 组件 . . . . . . . . . . . . . . . . . . . . . . . 69 使用 Slider 组件 . . . . . . . . . . . . . . . . . . . . . . . . . 71 使用 TextArea 组件 . . . . . . . . . . . . . . . . . . . . . . . . 73 使用 TextInput 组件 . . . . . . . . . . . . . . . . . . . . . . . 76 使用 TileList 组件 . . . . . . . . . . . . . . . . . . . . . . . . 78 使用 UILoader 组件 . . . . . . . . . . . . . . . . . . . . . . . . 81 使用 UIScrollBar 组件 . . . . . . . . . . . . . . . . . . . . . . .82 第 5 章 : 自定义 UI 组件 关于 UI 组件自定义 . . . . . . . . . . . . . . . . . . . . . . . . 85 设置样式 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 85 关于外观 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 87 自定义 Button 组件 . . . . . . . . . . . . . . . . . . . . . . . . 89 自定义 CheckBox 组件 . . . . . . . . . . . . . . . . . . . . . . . 91 自定义 ColorPicker 组件 . . . . . . . . . . . . . . . . . . . . . 93 自定义 ComboBox 组件 . . . . . . . . . . . . . . . . . . . . . . . 94 自定义 DataGrid 组件 . . . . . . . . . . . . . . . . . . . . . . . 96 自定义 Label 组件 . . . . . . . . . . . . . . . . . . . . . . . . 100 自定义 List 组件 . . . . . . . . . . . . . . . . . . . . . . . . 101 自定义 NumericStepper 组件 . . . . . . . . . . . . . . . . . . . 104 自定义 ProgressBar 组件 . . . . . . . . . . . . . . . . . . . . . 105 自定义 RadioButton 组件 . . . . . . . . . . . . . . . . . . . . . 107 自定义 ScrollPane 组件 . . . . . . . . . . . . . . . . . . . . . 108 自定义 Slider 组件 . . . . . . . . . . . . . . . . . . . . . . . 109 自定义 TextArea 组件 . . . . . . . . . . . . . . . . . . . . . . 110 自定义 TextInput 组件 . . . . . . . . . . . . . . . . . . . . . . 112 自定义 TileList 组件 . . . . . . . . . . . . . . . . . . . . . . 113 自定义 UILoader 组件 . . . . . . . . . . . . . . . . . . . . . . 115 自定义 UIScrollBar 组件 . . . . . . . . . . . . . . . . . . . . . 115 第 6 章 : 使用 FLVPlayback 组件 使用 FLVPlayback 组件 . . . . . . . . . . . . . . . . . . . . . . 117 自定义 FLVPlayback 组件 . . . . . . . . . . . . . . . . . . . . . 132 使用 SMIL 文件 . . . . . . . . . . . . . . . . . . . . . . . . . 141 第 7 章 : 使用 FLVPlayback 字幕组件 使用 FLVPlaybackCaptioning 组件 . . . . . . . . . . . . . . . . . 148 使用 Timed Text 字幕 . . . . . . . . . . . . . . . . . . . . . . 150 将提示点用于字幕 . . . . . . . . . . . . . . . . . . . . . . . . 155