国产探花免费观看_亚洲丰满少妇自慰呻吟_97日韩有码在线_资源在线日韩欧美_一区二区精品毛片,辰东完美世界有声小说,欢乐颂第一季,yy玄幻小说排行榜完本

首頁 > 網站 > WEB開發 > 正文

16.3.在圖表中選擇一個區域

2024-04-27 13:52:21
字體:
來源:轉載
供稿:網友
16.3.1.問題
我需要在圖表上選擇某個區域或者某些元素。
16.3.2. 解決方法
首先使用圖表的selectionMode 屬性設置需要選擇的區域類型,然后使用鼠標鍵盤或者程序來選擇圖表中的元素。
16.3.3. 討論
與其他列表組件相似,圖表的元素是可選的。這有利于用數據網格或二級圖表顯示數據點上更多的細節。要使圖表可選,就要設定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 中就會相應地顯示該數據條的數據。在程序中還有上一個和下一個按鈕,它們可以實現用程序更換選區。
+展開
-XML
<mx:Application xmlns:mx="http://www.adobe.com/2006/mxml"
layout="verticalbackgroundColor="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="barChartdataProvider="{chartDP}"
selectionMode="multiplechange="onSelectionChange()">

<mx:verticalAxis>
<mx:CategoryAxis
dataProvider="{chartDP}"
categoryField="day" />

</mx:verticalAxis>
<mx:series>
<mx:BarSeries id="barSeriesselectedIndex="0"
yField="dayxField="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="yValueheaderText="day" />
</mx:columns>
</mx:DataGrid>
</mx:Application>
發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
主站蜘蛛池模板: 镇远县| 沙田区| 荆门市| 郧西县| 赤壁市| 仙居县| 安丘市| 沁源县| 客服| 小金县| 莲花县| 昆明市| 彭水| 克山县| 东兰县| 富民县| 商河县| 遂昌县| 台北市| 武山县| 龙川县| 夏津县| 怀仁县| 安乡县| 铁岭市| 德保县| 澄城县| 江源县| 阳信县| 射洪县| 都安| 大丰市| 连江县| 上栗县| 余姚市| 化德县| 眉山市| 太和县| 驻马店市| 台东市| 庆安县|