flex 自定义tooltip
//flex用例网址
http://thanksmister.com/2012/01/18/flex-chart-datatip-renderer/
main.mxml
<?xml version="1.0" encoding="utf-8"?>
<mx:Application
xmlns:mx="http://www.adobe.com/2006/mxml"
xmlns:slc="com.scottlogic.charts.*"
layout="horizontal"
width="400"
height="300"
viewSourceURL="srcview/index.html"
>
<mx:Script>
<![CDATA[
import mx.charts.series.items.ColumnSeriesItem;
import mx.charts.series.ColumnSeries;
import mx.charts.HitData;
import mx.collections.ArrayCollection;
[Bindable]
public var sales:ArrayCollection = new ArrayCollection([
{period: "Q1", toys: 900, electronics: 300, clothes: 400},
{period: "Q2", toys: 200, electronics: 600, clothes: 450},
{period: "Q3", toys: 500, electronics: 300, clothes: 200},
{period: "Q4", toys: 800, electronics: 100, clothes: 300}
]);
/**
*
*/
private function myDataTipFunction(hitData:HitData):String
{
var series:ColumnSeries = ColumnSeries(hitData.element);
var item:ColumnSeriesItem = ColumnSeriesItem(hitData.chartItem);
var quarter:Object = xAxis.formatForScreen(item.xValue);
var total:Number = columnSet.positiveTotalsByAxis[item.xValue];
var value:Number = Number(item.yValue) - Number(item.minValue);
var percent:Number = Math.round(value / total * 1000) / 10; // want 2 decimal place precision
return "In <b>" + quarter + "</b> there were <b>" + value + " "
+ series.displayName + "</b> units sold.<br/>This is <b>"
+ percent + "%</b> of the <b>" + total + " total</b> units sold in "
+ quarter + ".";
}
]]>
</mx:Script>
<mx:ColumnChart
dataProvider="{sales}"
width="100%"
height="100%"
showDataTips="true"
dataTipFunction="myDataTipFunction"
>
<mx:horizontalAxis>
<mx:CategoryAxis id="xAxis" categoryField="period" />
</mx:horizontalAxis>
<mx:verticalAxis>
<mx:LinearAxis id="yAxis" />
</mx:verticalAxis>
<mx:series>
<slc:ColumnSet id="columnSet" type="stacked">
<mx:ColumnSeries yField="toys" displayName="Toys" />
<mx:ColumnSeries yField="electronics" displayName="Electronics" />
<mx:ColumnSeries yField="clothes" displayName="Clothes" />
</slc:ColumnSet>
</mx:series>
</mx:ColumnChart>
</mx:Application>
ColumnSet.as
package com.scottlogic.charts
{
import flash.utils.Dictionary;
import mx.charts.series.ColumnSet;
/**
* Extension to mx.charts.series.ColumnSet to expose the
* stack totals for public use, e.g. in a data tip
* function.
*/
public class ColumnSet extends mx.charts.series.ColumnSet
implements IStackedSeries
{
/**
* Constructor
*/
public function ColumnSet()
{
super();
}
/**
* @see IStackedSeries.positiveTotalsByAxis
*/
public function get positiveTotalsByAxis():Dictionary
{
return posTotalsByPrimaryAxis;
}
/**
* @see IStackedSeries.negativeTotalsByAxis
*/
public function get negativeTotalsByAxis():Dictionary
{
return negTotalsByPrimaryAxis;
}
/**
* @see IStackedSeries.stackMaximum
*/
public function get stackMaximum():Number
{
return stackedMaximum;
}
/**
* @see IStackedSeries.stackMinimum
*/
public function get stackMinimum():Number
{
return stackedMinimum;
}
}
}
flex 自定义tooltip的更多相关文章
- Flex自定义组件开发之日周月日期选择日历控件
原文:Flex自定义组件开发之日周月日期选择日历控件 使用过DateField的我们都知道,DateField 控件是用于显示日期的文本字段,字段右侧带有日历图标.当用户在控件边框内的 ...
- Flex自定义组件、皮肤,并调用
标签:Flex 自定义组件 自定义皮肤 主应用调用模块 本程序样例学习自flex 实战教程.但因原教程代码不全,且根据个人需求有更改. 1文件列表 自定义as类Reveal.as,该类实现组件的 ...
- flex 自定义组件的编写
使用flex也很久了,也改过别人写的flex自定义组件,但是就是没有系统的研究下flex组件的编写步骤,和要注意的东西,在这里我参照一本书中的例子,好好的理解下,也为了巩固下自己对flex的理解! 1 ...
- echarts自定义tooltip提示框内容
1.echarts自定义tooltip提示框内容 https://blog.csdn.net/dreamsup/article/details/56667330 2.关于Echarts的formatt ...
- DevExpress.XtraGrid.GridControl 实现自定义tooltip
DevExpress.XtraGrid.GridControl 控件默认的tooltip显示的每一个单元格的文本值,但是实际工作中会出现各种需求.我这里就有一个列是折扣率显示的值是0-1之间的两位小数 ...
- Flex 自定义事件
一.分派自定义事件类型 任何实现flash.event.IEventDispatcher接口的对象都可以分派事件,这包括所有显示对象和一些非显示对象类.通常,对于 自定义的非显示类,可以通过扩展fla ...
- flex自定义preloader预加载进度条
flex默认的preloader已经很不错了,可是有时候还是需要自定义的. 需要在要出现自定义预加载的程序的<mx:Application>标签里加入preloader="& ...
- Flex 自定义 Zlert 组件!
说明: 原生的 Alert.show 参数,要显示的按钮你只能 Alert.OK | Alert.Cancel 这样; 自定义 Zlert 参数跟原生的 差不多,按钮写法是这样写的: {"b ...
- Flex 自定义打印控件编写
打印历来是web应用一个比较棘手的问题,幸好flex web应用是运行在flash player上的,flash player可以访问打印机,所以flex 应用可以实现比较强大的打印功能.Flex 自 ...
随机推荐
- linux下的线程学习(一)
线程标识 #include<pthread.h> int pthread_equal( //用于比较两个线程是否相等 pthread_t tid1, //线程id=tid1 pthr ...
- vue组件详解(一)——组件与复用
一.什么是组件 组件 (Component) 是 Vue.js 最强大的功能之一.组件可以扩展 HTML 元素,封装可重用的代码. 二.组件用法 组件需要注册后才可以使用,注册有全局注册和局部注册两种 ...
- Java.util 包(Date 类、Calendar类、Random类)
java.util 包提供了一些实用的方法和数据结构. Date 类 Date 类表示日期和时间,里面封装了操作日期和时间的方法.Date 类经常用来获取系统当前时间. 构造方法: 构造方法 说明 D ...
- Kali Nethunter初体验
1.官网环境要求:n5 n7 n10 android 4.4 2.实验设备: N7 android 4.4.4 N7 android 4.4.3 N5 nadroid 4.4.2 3.开发者模式+us ...
- python28 excel读取模块xlrd
安装: pip install xlrd 简单使用: import xlrd book = xlrd.open_workbook(r'C:\Users\dinghanhua\Desktop\yqqap ...
- JavaScript的事件对象中的特殊属性和方法(鼠标,键盘)
鼠标操作导致的事件对象中的特殊属性和方法 鼠标事件是 Web 上面最常用的一类事件,毕竟鼠标还是最主要的定位设备.那么通过事件对象可以获取到鼠标按钮信息和屏幕坐标获取等 鼠标按钮 只有在主鼠标按钮被单 ...
- BZOJ 1036 树的统计Count 树链剖分模板题
题目链接: https://www.lydsy.com/JudgeOnline/problem.php?id=1036 题目大意: 一棵树上有n个节点,编号分别为1到n,每个节点都有一个权值w.我们将 ...
- C++内存总结——开坑,随时总结添加
C++内存区域分为: 程序代码区:存储程序代码的地方 栈区:编译器自动管理(分配释放)的内存区域,如函数参数,函数中的局部变量 堆区(又称动态存储区):由C语言中的函数malloc和free和C++ ...
- 10、Web Service-IDEA-jaxrs 整合spring
1.服务端的开发 1.web项目目录 2.pom <?xml version="1.0" encoding="UTF-8"?> <projec ...
- Unity设置相机正交相机和透视相机的动态切换
Camera.main.orthographic = true; Camera.main.orthographicSize = 4; Camera.main.orthographic = ...