33.24. <g:textAnnotation>

TextAnnotation构件用于解释数据表中某些数据的意义。

33.24.1. 构件信息

表 33.65. 构件信息

Component Typeorg.operamasks.faces.graph.TextAnnotation
Component Familyorg.operamasks.faces.graph.TextAnnotatoin
Component Classorg.operamasks.faces.component.graph.UITextAnnotation
Tag Classorg.operamasks.faces.webapp.graph.TextAnnotationTag

继承体系

+java.lang.Object

++javax.faces.component.UIComponent

+++javax.faces.component.UIComponentBase

++++org.operamasks.faces.component.graph.UITextAnnotation

33.24.2. 属性

表 33.66. 属性

anchor 定义类 org.operamasks.faces.component.graph.UITextAnnotation
类型 javax.el.ValueExpression(org.operamasks.faces.component.graph.PositionType)
是否必须 延时求值
指定锚相对于构件显示内容的位置
arrowAngle 定义类 org.operamasks.faces.component.graph.UITextAnnotation
类型 javax.el.ValueExpression(java.lang.Double)
是否必须 延时求值
指定锚的方向
arrowColor 定义类 org.operamasks.faces.component.graph.UITextAnnotation
类型 javax.el.ValueExpression(java.lang.Object)
是否必须 延时求值
指定锚的颜色
arrowLength 定义类 org.operamasks.faces.component.graph.UITextAnnotation
类型 javax.el.ValueExpression(java.lang.Double)
是否必须 延时求值
指定锚的长度
binding 定义类 javax.faces.component.UIComponentBase
类型 javax.el.ValueExpression(javax.faces.component.UIComponent)
是否必须 延时求值
一个值表达式,用于把该组件链接到一个ManagedBean的某个属性。
color 定义类 org.operamasks.faces.component.graph.UITextAnnotation
类型 javax.el.ValueExpression(java.lang.Object)
是否必须 延时求值
指定显示内容的字体颜色
drawArrow 定义类 org.operamasks.faces.component.graph.UITextAnnotation
类型 javax.el.ValueExpression(boolean)
是否必须 延时求值
指定是否绘制锚,默认值是true
font 定义类 org.operamasks.faces.component.graph.UITextAnnotation
类型 javax.el.ValueExpression(java.lang.Object)
是否必须 延时求值
指定显示内容的字体,属性值的格式为"font-name,font-style,font-size"
id 定义类 javax.faces.component.UIComponentBase
类型 java.lang.String
是否必须 延时求值
这个组件的组件标识符。这个值在最近的命名容器类型的父组件范围内,必须是唯一的。
rendered 定义类 javax.faces.component.UIComponentBase
类型 boolean(boolean)
是否必须 延时求值
一个标志,指出该组件是否要在任何随后的form提交过程中被渲染或处理。 这个属性的缺省值是true。
rotationAngle 定义类 org.operamasks.faces.component.graph.UITextAnnotation
类型 javax.el.ValueExpression(java.lang.Double)
是否必须 延时求值
构件旋转角度
text 定义类 org.operamasks.faces.component.graph.UITextAnnotation
类型 javax.el.ValueExpression(java.lang.String)
是否必须 延时求值
指定构件显示的内容
xValue 定义类 org.operamasks.faces.component.graph.UITextAnnotation
类型 javax.el.ValueExpression(java.lang.Object)
是否必须 延时求值
指定构件锚X轴的值
yValue 定义类 org.operamasks.faces.component.graph.UITextAnnotation
类型 javax.el.ValueExpression(java.lang.Object)
是否必须 延时求值
指定构件锚Y轴的值

33.24.3. 构件API

33.24.3.1. PositionType(枚举类型)

表 33.67. 枚举成员

名称 说明
Top锚在构件显示内容的上方
Bottom锚在构件显示内容的下方
Left锚在构件显示内容的左方
Right锚在构件显示内容的右方
TopLeft锚在构件显示内容的左上方
TopRight锚在构件显示内容的右上方
BottomLeft锚在构件显示内容的左下方
BottomRight锚在构件显示内容的右下方
LeftTop锚在构件显示内容的左上方
LeftBottom锚在构件显示内容的左下方
RightTop锚在构件显示内容的右上方
RightBottom锚在构件显示内容的右下方
Center 
Stretch 

33.24.4. 示例

以下的例子介绍了g:textAnnotation标签使用方法,在创建jsp页面之前,需要创建为数据表提供数据的托管Bean:

@ManagedBean(scope=ManagedBeanScope.REQUEST)
public class JDKData extends ArrayDataModel
{
    public static class JDKDataItem {
        private String releaseVersion;
        private int classCount;

     public JDKDataItem(String releaseVersion, int classCount) {
         this.releaseVersion = releaseVersion;
         this.classCount = classCount;
     }
    
   ......

    private static final JDKDataItem[] data = new JDKDataItem[] {
        new JDKDataItem("JDK 1.0", 212),
        new JDKDataItem("JDK 1.1", 504),
        new JDKDataItem("JDK 1.2", 1520),
        new JDKDataItem("JDK 1.3", 1842),
        new JDKDataItem("JDK 1.4", 2991)
    };

    ......
}

下面是使用g:textAnnotation标签的代码:

<g:lineChart title="Java Standard Class Library" xAxisLabel="Release" yAxisLabel="Class Count" drawMarkers="true" showLegend="false"> 
  <g:title value="Number of Classes By Release" /> 
  <g:title value="Source: Java In a Nutshell (4th Edition) by David Flanagan (O'Reilly)" font="SansSerif,normal,10" position="BottomRight" /> 
  <g:dataSeries value="#{JDKData}" var="x" rows="10"> 
    <g:dataLabel value="#{x.releaseVersion}" /> 
    <g:dataItem legend="Classes" value="#{x.classCount}" /> 
  </g:dataSeries> 
  <g:textAnnotation xValue="JDK 1.0" yValue="212" text="Released 18-May-1995" anchor="Bottom" drawArrow="true" arrowAngle="-90" rotationAngle="-60"/> 
  <g:textAnnotation xValue="JDK 1.1" yValue="504" text="Released 12-Sep-1997" anchor="Left" drawArrow="true" arrowAngle="0" arrowLength="50" /> 
  ...... 
</g:lineChart>