Delphi:使用DBGrid绑定图表

问题描述 投票:0回答:1

我想用DBGrid绑定图表。请参见图示。当我在数字3(X轴)上单击DBGrid时,应突出显示位置3的条形(或指向条形3的指针)。当我点击Grid中的数字4时,条形图4会突出显示等。我正在使用TDBChart

有没有办法做到这一点?

sample graph image

delphi data-binding teechart dbgrid
1个回答
0
投票

不知道图表组件是什么,不能提供一个工作示例,但您要查找的关键是对网格中的数据集使用AfterScroll事件。由于每行代表不同的记录,因此当网格选择移动到该行时会触发该事件。

编辑:这不会突出显示框,但会更改每个条形图顶部的值标记的颜色。希望这能让你顺利上路。 MyQuery正在为数据源提供支持

var 
  savecolor : tcolor;

procedure MyForm.FormShow(Sender:TObject);
begin
 ...
 SaveColor := dbchart1.series[0].marks.items[0].color;
 ...
end;

procedure MyForm.MyQueryBeforeScroll(DataSet : TDataSet);
begin
  dbchart1.series[0].marks.items[MyQuery.recno-1].color := SaveColor;
end;

procedure MyForm.MyQueryAfterScroll(DataSet:TDataSet);
begin
 dbchart1.series[0].marks.items[MyQuery.recno-1].color := clRed;
end;
© www.soinside.com 2019 - 2024. All rights reserved.