delphi - 获取 TChart 中 XY 点的 TChartSeries

标签 delphi charts delphi-7 teechart

我正在使用 Delphi 7 附带的 TChart 控件,并希望获取鼠标指针下的线条/条形的系列和值编号。

我知道 OnClickSeries 事件提供了很好的信息,但是当我将鼠标悬停在一个系列上时,我真的需要这些信息

编辑:我在 TChart 上找到了一种 HitTest 方法,它适用于任何系列类型和一个图表中的多个系列,因此我发布了此方法并将其作为我接受的答案。特别感谢 GameCat 的努力。

最佳答案

您可以检查OnChartMouseMove(或OnSeriesMouseMove)

procedure TForm5.Chart1MouseMove(Sender: TObject; Shift: TShiftState; X,
  Y: Integer);
var
  i : Integer;
begin
  i := Series1.CalcClickedPie(x,y); // i = index of checked data -1 for none
  Memo1.Lines.Add(IntToStr(i));
end;

好吧,我的错,酒吧的代码是不同的(甚至更简单):

procedure TForm5.Chart1MouseMove(Sender: TObject; Shift: TShiftState; X,
  Y: Integer);
var
  i : Integer;
begin
  i := Series1.GetCursorValueIndex;
  Memo1.Lines.Add(IntToStr(i));
end;

关于delphi - 获取 TChart 中 XY 点的 TChartSeries,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/482497/

相关文章:

arrays - 如何在没有 ShareMem 单元的情况下将动态字符串数组传递给 dll 库(dll 和用 d7 编写的客户端)?

delphi - 在 delphi 中的事件拨号或 VPN 连接上设置 IE 中的 Internet 代理

delphi - 如何在我的应用程序中嵌入 Adob​​e Photoshop

delphi - 如何在delphi FM2中进行增量搜索?

Extjs图表整数 Axis

javascript - Chartjs 自定义刻度数字

delphi - 如何在Delphi中消除变量 "panel1, panel2, panel3 .. etc."?

delphi - TEmbeddedWB 和背景颜色

delphi - 如何像那里一样正确发送 POST 请求?

javascript - 调整图表数据?