Flex CategoryAxis 字体样式修改

在群里面有朋友问我,如何可以修改Flex Charts其中一个可视化标签:CategoryAxis的字体大小、颜色等方式。

CategoryAxis的定义:
CategoryAxis类允许图表表示由轴上的一组离散值组成的数据。通常可以使用CategoryAxis类定义一组沿图表的轴显示的标签。例如,按城市、年份、业务部门等呈现数据的图表。
CategoryAxis的继承关系:
CategoryAxis → AxisBase → EventDispatcher → Object
从上述关系可以看出CategoryAxis没有继承UIComponent、DisplayObject等可视化容器,同时CategoryAxis也没有一些关于文字设定方面的属性,例如fontsize、fontWeight、textDecoration等。

不过我们可以利用其他的方式来实现这个功能。
CategoryAxis有一个叫做labelFunction的属性,这个属性的定义:指定一个函数,用于定义为CategoryAxis的dataProvider中的各个项目生成的标签。

所以修改的原理:可以利用labelFunction得到每个Label,然后再对其进行修改。

片段代码:

<mx:horizontalAxis>
<mx:CategoryAxis id="ca"
categoryField="@date" title="August 2007" labelFunction="categoryAxisLabelFun" />
</mx:horizontalAxis>

private function categoryAxisLabelFun( item : Object, prevValue : Object, axis : CategoryAxis, categoryItem : Object) : String {
var temp : String = item as String;
return temp;
}

其中categoryAxisLabelFun的参数:
1、item:保存的就是Label里面文字信息。
2、prevValue:坐标轴上面,前一个类别的值。
3、axis:CategoryAxis的实例化对象。
4、categoryItem:是将要呈现的dataProvider中的项目。
所以与标签有关系的只有第一个参数:item。

以下代码分别是对CategoryAxis的标签进行修改的代码:

1、改变字体大小:
private function categoryAxisLabelFun( item : Object, prevValue : Object, axis : CategoryAxis, categoryItem : Object) : String {
var temp : String = item as String;
return '<font size="20">' + temp + </font>';
}

2、改变字体粗细:
private function categoryAxisLabelFun( item : Object, prevValue : Object, axis : CategoryAxis, categoryItem : Object) : String {
var temp : String = item as String;
return '<B>' + temp + </B>';
}

3、改变字体下划线:
private function categoryAxisLabelFun( item : Object, prevValue : Object, axis : CategoryAxis, categoryItem : Object) : String {
var temp : String = item as String;
return '<U>' + temp + </U>';
}

4、改变字体斜体:
private function categoryAxisLabelFun( item : Object, prevValue : Object, axis : CategoryAxis, categoryItem : Object) : String {
var temp : String = item as String;
return '<I>' + temp + </I>';
}

5、改变字体颜色:
private function categoryAxisLabelFun( item : Object, prevValue : Object, axis : CategoryAxis, categoryItem : Object) : String {
var temp : String = item as String;
return '<font color="#ff0000">' + temp + </font>';
}

综上所述,其实我们利用了一个很简单的方式,使用HTML标签对其Label进行设置。

(0)

相关推荐

  • Flex 关于字体的应用示例介绍

    Flex4.5,为了使项目能正确美化字体,并消除字体的锯齿,先把字体文件FZHTJW.TTF放入到项目中 复制代码 代码如下: <fx:Style> @namespace s "library://ns.adobe.com/flex/spark"; @namespace mx "library://ns.adobe.com/flex/mx"; @font-face{ src:url("assets/Fonts/FZHTJW.TTF")

  • Flex中实现对一个text渲染不同的字体颜色示例

    开始把控件局限在label上,发现实现起来似乎不太现实.应该用textarea控件: 复制代码 代码如下: <?xml version="1.0" encoding="utf-8"?> <s:Application xmlns:fx="http://ns.adobe.com/mxml/2009" xmlns:s="library://ns.adobe.com/flex/spark" xmlns:mx=&quo

  • Flex CategoryAxis 字体样式修改

    在群里面有朋友问我,如何可以修改Flex Charts其中一个可视化标签:CategoryAxis的字体大小.颜色等方式. CategoryAxis的定义: CategoryAxis类允许图表表示由轴上的一组离散值组成的数据.通常可以使用CategoryAxis类定义一组沿图表的轴显示的标签.例如,按城市.年份.业务部门等呈现数据的图表. CategoryAxis的继承关系: CategoryAxis → AxisBase → EventDispatcher → Object 从上述关系可以看出

  • Jupyter Notebook 如何修改字体和大小以及更改字体样式

    Notebook 修改字体和大小 原理很简单,就是更改CSS文件 原本的字体很难看,尤其是 引号

  • Android修改字体样式的示例代码

    在Android实际开发中根据UI的设计图,经常要去改变系统默认的字体样式 这样做会使apk变大很多啊 而且为什么android要使用ios的字体-_-# 单独设置字体样式 (1)Android系统提供了几种字体样式可供选择 通过设置typeface属性或者fontFamily属性设置 typeface属性: normal serif sans monospace fontFamily属性: casual cursive serif monospace sans-serif sans-serif

  • iOS 更改UILabel某些字体样式方法

    废话不多说了,大家先看下代码吧,具体待明日如下所示: //str:要改变的字 //result:整个label里的字 //color: 字的颜色 - (NSMutableAttributedString *)changeSomeText:(NSString *)str inText:(NSString *)result withColor:(UIColor *)color { NSMutableAttributedString *attributeStr = [[NSMutableAttribu

  • iOS中 UIActionSheet字体的修改

    一,效果图. 二,代码. RootViewController.h #import <UIKit/UIKit.h> @interface RootViewController : UIViewController <UIActionSheetDelegate> @end RootViewController.m -(void)touchesBegan:(NSSet *)touches withEvent:(UIEvent *)event { UIActionSheet *actio

  • phpcms中的评论样式修改方法

    phpcms中自带的评论插件很好用!但是样式个人感觉丑的狠,百度一下也没能找到解决方式,也许是自己的搜索方式不对,于是自己就研究了研究,这里可以使用两种方法进行修改 方法一: 使用PHPCMS中的get方法进行获取数据 //拼接评论表的commentid字段值 {php $commentid = 'content_'.$catid.'-'.$id.'-'.$modelid;} //查询获取数据 {pc:get sql="SELECT * FROM v9_comment_data_1 where

  • 仿dedecms下拉分页样式修改的thinkphp分页类实例

    本文实例讲述了仿dede下拉分页样式修改的thinkphp分页类.分享给大家供大家参考.具体实现方法如下: 修改thinkphp分页类:如下拉列表式分页(类似dedecms分页): 纯html代码: 复制代码 代码如下: <select name="sldd" style="width:36px" onchange="location.href=this.options[this.selectedIndex].value;"> <

  • flash as2.0组件样式修改方法(直接改元件就行喽)

    方法: 1. 新建一个fla文件test.fla(flash cs3以上的记得要选2.0的哦); 2. 在flash的安装目录下找到zh_cn\Configuration\Component Source\ActionScript 2.0\FLA\HaloTheme.fla(这是第二版的组件样式,第一版的是SampleTheme.fla)<为了别误删除, 你可以把他copy到其他地方供下步使用>; 3. 在test.fla里选择 文件->导入->打开外部库, 选择HaloTheme

  • vue中element组件样式修改无效的解决方法

    如下所示: <style> .detail{ .el-input__inner { height: 48px; } } </style> 直接写style注意不加scoped,然后用一个组件最外层的class包裹住,就不会改到所有的组件的样式了. 以上这篇vue中element组件样式修改无效的解决方法就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持我们. 您可能感兴趣的文章: Vue 组件间的样式冲突污染 浅谈vue中改elementUI默认样式引发的st

  • elementui的默认样式修改方法

    今天用element ui ,做了个消息提示,发现提示的位置总是在上面,如图: 可是我想让提示的位置到下面来,该怎么办? 最后还是看了官方的api 原来有个自定义样式属性 customClass 设置下就好了 js代码 css代码 效果图 以上这篇elementui的默认样式修改方法就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持我们. 您可能感兴趣的文章: 浅谈vue中改elementUI默认样式引发的static与assets的区别 浅谈vue中改elementUI默

随机推荐