//flex用例网址

http://thanksmister.com/2012/01/18/flex-chart-datatip-renderer/

http://help.adobe.com/en_US/flex/using/WS2db454920e96a9e51e63e3d11c0bf65c3d-7fff.html#WS2db454920e96a9e51e63e3d11c0bf69084-7c10

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的更多相关文章

  1. Flex自定义组件开发之日周月日期选择日历控件

    原文:Flex自定义组件开发之日周月日期选择日历控件         使用过DateField的我们都知道,DateField 控件是用于显示日期的文本字段,字段右侧带有日历图标.当用户在控件边框内的 ...

  2. Flex自定义组件、皮肤,并调用

    标签:Flex  自定义组件  自定义皮肤  主应用调用模块 本程序样例学习自flex 实战教程.但因原教程代码不全,且根据个人需求有更改. 1文件列表 自定义as类Reveal.as,该类实现组件的 ...

  3. flex 自定义组件的编写

    使用flex也很久了,也改过别人写的flex自定义组件,但是就是没有系统的研究下flex组件的编写步骤,和要注意的东西,在这里我参照一本书中的例子,好好的理解下,也为了巩固下自己对flex的理解! 1 ...

  4. echarts自定义tooltip提示框内容

    1.echarts自定义tooltip提示框内容 https://blog.csdn.net/dreamsup/article/details/56667330 2.关于Echarts的formatt ...

  5. DevExpress.XtraGrid.GridControl 实现自定义tooltip

    DevExpress.XtraGrid.GridControl 控件默认的tooltip显示的每一个单元格的文本值,但是实际工作中会出现各种需求.我这里就有一个列是折扣率显示的值是0-1之间的两位小数 ...

  6. Flex 自定义事件

    一.分派自定义事件类型 任何实现flash.event.IEventDispatcher接口的对象都可以分派事件,这包括所有显示对象和一些非显示对象类.通常,对于 自定义的非显示类,可以通过扩展fla ...

  7. flex自定义preloader预加载进度条

    flex默认的preloader已经很不错了,可是有时候还是需要自定义的.   需要在要出现自定义预加载的程序的<mx:Application>标签里加入preloader="& ...

  8. Flex 自定义 Zlert 组件!

    说明: 原生的 Alert.show 参数,要显示的按钮你只能 Alert.OK | Alert.Cancel 这样; 自定义 Zlert 参数跟原生的 差不多,按钮写法是这样写的: {"b ...

  9. Flex 自定义打印控件编写

    打印历来是web应用一个比较棘手的问题,幸好flex web应用是运行在flash player上的,flash player可以访问打印机,所以flex 应用可以实现比较强大的打印功能.Flex 自 ...

随机推荐

  1. miniblast_hash算法c语言实现

    对于一组基因文件中的基因序列,选取一段基因片段,作为索引,利用hash表,查找固定的基因片段.有一定的并且容忍错误. 简单讲就是自己实现一个hashtable,将选出特定字符串建立索引,便于查询.输出 ...

  2. August 02nd 2017 Week 31st Wednesday

    Love means never having to say you are sorry. 爱就是永远不必说对不起. If there is ture love, you will never do ...

  3. 理解活在IPHONE中的那些APP (五)

    为了让App活起来 上一篇简单的说了一下关于IOS的一些事情,现在有必要深入了解一些对于让App活起来比较关键的信息.比如IOS系统的架构,这个我就不赘述了,请移步http://blog.csdn.n ...

  4. Fedora Server 上配置 MariaDb 集群

    下载与安装 MariaDB Galera Cluster 10.1之前的版本安装,输入以下命令进行安装: sudo dnf install mariadb-galera-server 如果电脑上还没安 ...

  5. [转]PowerDesigner使用常见问题锦集

    1. 附加:PowerDesigner 的调色板(Palette)快捷工具栏不见了,怎么重新打开,找回来呢 上网搜索了一下”powerdesigner 图形工具栏”,找到了找回PowerDesigne ...

  6. 自己制作html页面用的字体图标。

    从网上看到的一个制作字体图标的教程,自己试用过,确实还不错,就把教程搬过来了,方便查看. 我们UI做出来矢量的图,放到这个软件里操作,下面有教程,之后输入.ttf或是.otf格式的字体,我是在网上找了 ...

  7. 使用Docker遇到的基本命令及问题小结

    当遇到Cannot connect to the Docker daemon. Is the docker daemon running on this host?导致Docker无法启动时,重启Do ...

  8. ASP.NET Core MVC中Controller的Action如何直接使用Response.Body的Stream流输出数据

    在ASP.NET Core MVC中,我们有时候需要在Controller的Action中直接输出数据到Response.Body这个Stream流中,例如如果我们要输出一个很大的文件到客户端浏览器让 ...

  9. Web框架——XWAF的代码结构和运行机制(4)

    XWAF是一套基于Servlet和java反射技术的Web应用程序框架,它利用Servlet运行机制在服务器上加载和运行,接管客户端请求,依靠ServletRequest对象获取用户请求信息,使用Se ...

  10. DDL-库的管理

    一.创建库create database [if not exists] 库名[ character set 字符集名]; 二.修改库alter database 库名 character set 字 ...