使用Delphi TChart显示数据库中的信息

时间:2015-08-23 08:33:25

标签: sql database delphi pie-chart teechart

我想在Delphi中创建一个饼图,向用户显示参与特定运动的人数。

以下SQL语句从数据库获取信息并将变量中的人数存储起来。数据库中的数据类型是yes / no,因此参与特定运动的人将有一个勾选,而那些不参加特定运动的人则不会。 sql语句将确定有多少人参与特定的运动(如果数据库中有勾号)

qry.sql.clear;
qry.sql.add('SELECT Count(tennis) AS [NoTennis] FROM [Sports] WHERE Tennis = True');
qry.Open;
iTennis := qry['NoTennis'];   {integer variable}

这适用于所有其他运动,如游泳,曲棍球等

之后,必须在饼图中显示此数据。我有以下代码......

Chart1.Series[0].AddXY(iTennis, 1, 'Tennis', clTeeColor);

这显然也适用于所有其他运动。但是,它不是在运行时显示我的数据,而是显示有关键盘和驾车者等的随机数据。要查看我在说什么,请点击here

如何让TChart更改数据?是SQL语句还是添加导致问题的x和y值?

1 个答案:

答案 0 :(得分:2)

您正在显示饼图。图表类型与向图表添加数据的方式相关。我记得那些AddXy只适用于基于行的图表。尝试

Chart1.Series[0].Add(123, 'Tennis');

见steema documentation

要清除以前生成的系列值,请使用

Chart1.Series[0].Clear();