`

Flex学习记录(转cookbook在图表中选择一个区域)

阅读更多
首先使用图表的selectionMode 属性设置需要选择的区域类型,然后使用鼠标键盘或者程序
来选择图表中的元素。
与其他列表组件相似,图表的元素是可选的。这有利于用数据网格或二级图表显示数据点上
更多的细节。要使图表可选,就要设定selectionMode 属性为single 或者mulitiple
(selectionMode 属性的默认设置是none)。selectionMode 属性设置为none 就代表图表不可选;
single 属性允许一次选择一个元素;multiple 属性允许多个元素同时被选择。
选择图表元素可以通过鼠标键盘,或者通过拖拽一个矩形框来选择多个点,或者使用
ActionScript 程序来实现。当选择图表上多个元素时,第一个被选择的元素会被系统认为是
定位点,而最后一个被选择的元素会被认为是插入符号。用鼠标选择的方式是非常直观的,
点击图表的元素就可以将其选中。要选择多个元素,只要按住Shift 键可以选择连续的元素,
按住Ctrl 键(在Mac 系统上是Command 键)可以逐一选择不连续的元素。使用键盘上的左右
方向键可以遍历一个图表上的所有数据列。当selectionMode 属性设置为multiple,在图表中
用鼠标脱出一个矩形区域可以选择该矩形区覆盖的所以元素。
用程序创建选区稍微负责一点。图表选区的API 提供选择元素和操作所选区域的功能。可
以使用以下ChartSeries 对象的属性来获得和设置选区状态:
• selectedItem
• selectedItems
• selectedIndex
• selectedIndices
除了上述的解决办法,还可以使用ChartBase 类的方法来实现:
• getNextItem()
• getPreviousItem()
• getFirstItem()
• getLastItem()
使用图表Change 事件可以监听用户是否使用鼠标或者键盘改变选区,但是对程序改变选区
的情况无效。
下面的例子展示的是在图表中选中了某个数据条后,在DataGrid 中就会相应地显示该数据
条的数据。在程序中还有上一个和下一个按钮,它们可以实现用程序更换选区。
<mx:Application xmlns:mx="http://www.adobe.com/2006/mxml"
layout="vertical" backgroundColor="0xFFFFFF">
<mx:Script>
	<![CDATA[
	[Bindable] public var chartDP:Array = [
	{day:'Monday',rainfall:10,elevation:100,temperature:78},
	{day:'Tuesday',rainfall:7,elevation:220,temperature:66},
	{day:'Wednesday',rainfall:5,elevation:540,temperature:55},
	{day:'Thursday',rainfall:8,elevation:60,temperature:84},
	{day:'Friday',rainfall:11,elevation:390,temperature:52},
	{day:'Saturday',rainfall:12,elevation:790,temperature:45},
	{day:'Sunday',rainfall:14,elevation:1220,temperature:24}
	];
	private function changeSelectedIndex(offset:int):void
	{
		barSeries.selectedIndex+=offset;
		onSelectionChange();
	}
	private function onSelectionChange():void
	{
		// programmatic changes to chart selection don't
		//fire a Change event,
		//so we need to manually reset
		// the dataProvider of our detail grid when we
		//programatically changethe selection
		detailGrid.dataProvider = barChart.selectedChartItems;
	}
	]]>
</mx:Script>
<!-- use the change event to set the dataProvider of our
detail grid to our chart'
s selected items -->
<mx:BarChart id="barChart" dataProvider="{chartDP}"
	selectionMode="multiple" change="onSelectionChange()">
	<mx:verticalAxis>
		<mx:CategoryAxis dataProvider="{chartDP}" categoryField="day" />
	</mx:verticalAxis>
	<mx:series>
		<mx:BarSeries id="barSeries" selectedIndex="0"
			yField="day" xField="rainfall" displayName="day" />
	</mx:series>
</mx:BarChart>
<mx:HBox>
	<mx:Button click="changeSelectedIndex(1)" label="Previous" />
	<mx:Button click="changeSelectedIndex(-1)" label="Next" />
</mx:HBox>
<mx:DataGrid id="detailGrid" >
	<mx:columns>
		<mx:DataGridColumn dataField="xValue" headerText="rainfall" />
		<mx:DataGridColumn dataField="yValue" headerText="day" />
	</mx:columns>
</mx:DataGrid>
</mx:Application>
分享到:
评论

相关推荐

    Flex cookbook(中文版)+Flex入门到实践

    这个大礼包包含两本非常重要的学习资料:《Flex cookbook(中文版)》和《Flex入门到实践》。这两本书将帮助初学者深入理解Flex的原理与实践应用。 《Flex入门到实践》这本书可能涵盖了以下知识点: 1. **Flex基础**...

    Flex+3+Cookbook.rar

    《Flex 3 Cookbook》这本书是针对Adobe Flex 3这一编程框架的一本实用指南。Flex是一种用于构建富互联网应用程序(Rich Internet Applications,RIAs)的开放源码开发平台,它允许开发者使用MXML和ActionScript创建...

    flex cookbook中文版

    《Flex Cookbook中文版》是针对Adobe Flex开发的一款实用指南,主要面向希望提升Flex应用开发技能的程序员。Flex是一种用于构建富互联网应用程序(RIA)的开放源码框架,它基于ActionScript编程语言和Flash Player或...

    Flex 4 Cookbook

    一个庞大的Flex框架,任何企图掩盖书在任何深度的整个框架将毫无疑问在某些方面或另一个失败。考虑到这一点,我们做了一个企图掩盖的主题,最烦恼的Flex 4的开发工作。一路上,我们将阐明如何框工作的结构,以及帮助...

    flex3 Cookbook 中文版

    《Flex 3 Cookbook》中文版是一本针对Adobe Flex 3技术的实践指南,旨在帮助初学者及有一定经验的开发者深入理解和应用Flex技术。这本书详细介绍了如何利用Flex框架创建富互联网应用程序(RIA),提供了大量实例代码...

    flex3的cookbook书籍完整版dpf(包含目录)

    16.3.节在图表中选择一个区域 16.4.节设计图表的刻度线 16.5.节为图表创建自定义标签 16.6.节创建列状图的明细项目效果 16.7节为图表的元素更换皮肤 16.8.节使用ActionScript动态添加和去除图表中的列 16.9.节重叠多...

    Flex3 cookbook

    2. **组件库**:Flex 3包含一个丰富的组件集合,如Button、List、Accordion等。书中的代码实例将指导你如何自定义和扩展这些组件,以满足特定的设计需求。 3. **数据绑定**:Flex 3的数据绑定机制允许UI元素自动...

    flex3cookbookzhcn_airia

    Flex 3 Cookbook的核心是其“食谱”结构,每个章节都包含一个具体问题和解决该问题的步骤,这使得读者可以快速找到并应用到自己的项目中。例如,如何创建自定义组件、如何实现数据驱动的图表、如何使用效果库来增强...

    Flex精通_66013.rar

    2. **Flex 3 Cookbook 中文版**:`Flex_3_Cookbook_中文版.pdf`是一本实践导向的指南,书中包含了大量解决实际问题的代码示例和技巧,涵盖了Flex 3中的组件使用、数据绑定、图表显示、布局管理等内容。通过这本书,...

    Flex3 Java 中文教程

    6. **图形与动画**:Flex 3提供了一个强大的图形绘制API,包括绘图路径、渐变填充和位图效果等。教程可能涵盖如何创建复杂的矢量图形和动画效果,以提升用户体验。 7. **事件处理和错误处理**:讲解如何处理用户...

    flex入门到精通教程

    6. **组件库**:Flex提供了一套完整的组件库,包括按钮、文本输入框、列表、图表等多种UI元素,可以直接在MXML中使用,简化了界面设计工作。 7. **数据绑定**:Flex支持数据绑定,使得UI组件的显示可以直接关联到...

    flex电子书,讲的很不错

    它通常会介绍Flex的基本概念、开发环境的设置、基本组件的使用、数据绑定和事件处理等,让读者能在短时间内构建出第一个Flex应用程序。 通过阅读这些书籍,开发者不仅可以学习到Flex的基本语法和API,还能了解到...

    flex资料箱(flex + adobe air)

    5. **Flex Cookbook**:这可能是一本关于解决Flex开发中常见问题的参考书,包含各种实用技巧和解决方案,是开发者解决问题的好帮手。 6. **Adobe AIR**:AIR允许Flex应用运行在用户的桌面,扩展了Flex的应用范围。...

Global site tag (gtag.js) - Google Analytics