我有一个垂直轴的条形图
<mx:verticalAxis >
<mx:CategoryAxis id="catAxis" title="Employee" categoryField="id"/>
</mx:verticalAxis>
我希望纵轴上的标签可以点击。因此,当用户点击标签时,点击事件就会触发,我可以用它做点什么。我对点击栏本身并不感兴趣(我知道如何实现)
我尝试将一个事件监听器添加到Mouse.Click类型的CategoryAxis中,但没有任何东西被触发。
感谢任何帮助。
答案 0 :(得分:1)
MyLabelRenderer
的ActionScript类,它扩展了ChartLabel
。在其构造函数中,我添加了所有事件侦听器,例如我需要的鼠标单击事件。
这是棘手的部分。感谢KB(朋友)提供正确的实例化。在我的图表所在的主应用程序中,我必须以这种方式实例化我的新类MyLabelRenderer
的实例:
private var myLabelRenderer:ClassFactory = new ClassFactory(MyLabelRenderer);
然后您可以通过以下方式将其分配给AxisRenderer对象:
<mx:verticalAxisRenderers>
<mx:AxisRenderer axis="{catAxis}" labelRenderer="{myLabelRenderer}"/>
</mx:verticalAxisRenderers>
祝你好运......
答案 1 :(得分:0)
我建议如下:
AxisRenderer
)并将其分配给您正在使用的verticalAxisRenderer
样式属性。Axis
属性。您可以在其中添加单击侦听器。 注意:标签渲染器必须实现IDataRenderer和IFlexDisplayObject接口。