怎么显示TChart中Series的曲线横纵坐标值? ( 积分: 50 )

  • 主题发起人 主题发起人 check
  • 开始时间 开始时间
C

check

Unregistered / Unconfirmed
GUEST, unregistred user!
现在我自己已经可以在Chart的MouseMove事件中显示每个点的值,Chart 中Series的MouseEnter事件中我也加入了显示坐标值的代码, 但是问题出现了,我的鼠标在Series曲线上经过时可以显示坐标值,但是我鼠标不经过Series曲线, 而是在其下方经过也会显示坐标值. 我知道问题的原因是我在Chart的MouseMove事件中有显示坐标值的代码,但是如果我去掉MouseMove事件中的代码,而是 仅仅依靠Series的MouseEnter事件中的代码[blue]显示的只是曲线中 下降趋势的线的坐标值[/blue],[red] 上升趋势的线的坐标值不能显示[/red].
请问高手应该如何解决?谢谢!
 
手边没环境,函数记不清楚了。。。大概就这个样子就可以获得当前的x,y值了
with Chart.Seriesdo
begin

GetCursor????(xValue,yValue);
CurYValue := YValues.Value[Round(xValue)];
end;
当前鼠标位置的x,y值:
x 值是 xValue,y 值是CurYValue
 
可以考虑增加一个Tool,设定该Tool对应的曲线,然后设定显示属性即可。
 
谢谢大家支持,我自己可以显示每个点的坐标值了,通过得到鼠标的坐标再去跟,曲线的比对,当鼠标的横坐标与纵坐标,分别与曲线的横纵坐标差不大于0.01时 认定为鼠标停留在曲线上有值的点, 然后在显示该点的值, 现在的问题是显示的灵敏度问题, 我的鼠标必须要非常准确的停在曲线点上在能显示, 修改0.01为 100都不行, 曲线上横坐标的值为700多纵坐标为110多, 这怎么解决?
 

Similar threads

后退
顶部