Delphi TeeChart 仅显示数据集中的一条记录
使用 Delphi Steema TeeChart 组件,如果我使用用户界面将 BarSeries 链接到数据集,它会显示得很好,但如果我使用代码(我需要这样做),它只会显示一个条形图,即使我有几条记录在数据库中。 我究竟做错了什么?
代码:
var
i:Integer;
Bar:TBarSeries;
begin
ADataSet.Close;
ADataSet.LoadFromDataSet(mtbl);
ADataSet.Active := true;
ADataSet.First;
ASource.DataSet := ADataSet;
Bar := TBarSeries.Create(AChart);
Bar.Assign(Series2);
Bar.ParentChart := AChart;
Bar.DataSource := ASource;
Bar.XLabelsSource := 'Date';
Bar.YValues.ValueSource := 'Load';
for i := 0 to AChart.SeriesCount - 1 do
begin
AChart.Series[i].CheckDataSource;
end;
ADataSet是一个DevExpress MemData(TdxMemData)。 当我运行程序时,X 轴仅显示一个条形,即数据集中的第一条记录,即使数据集中有 4 条记录。
Using Delphi Steema TeeChart component, if I link a BarSeries to a dataset using the user interface, it shows up fine, but if I do it using code (which I need to), it's only showing one bar, even when I have several records in the database. What am I doing wrong?
Code:
var
i:Integer;
Bar:TBarSeries;
begin
ADataSet.Close;
ADataSet.LoadFromDataSet(mtbl);
ADataSet.Active := true;
ADataSet.First;
ASource.DataSet := ADataSet;
Bar := TBarSeries.Create(AChart);
Bar.Assign(Series2);
Bar.ParentChart := AChart;
Bar.DataSource := ASource;
Bar.XLabelsSource := 'Date';
Bar.YValues.ValueSource := 'Load';
for i := 0 to AChart.SeriesCount - 1 do
begin
AChart.Series[i].CheckDataSource;
end;
ADataSet is a DevExpress MemData (TdxMemData). When I run the program, the X axis is only showing one bar, the first record in the dataset, even though I have 4 records in the dataset.
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(2)
这段代码对我有用(使用带有 ID 和 Height 字段的 Access 数据库,我在表单上放置了 TDBChart、TADODataSet 和 TButton):
请注意,数据源应该是 TTable、TQuery 或 TDataSet(不是 TDataSource - go)数字!)。
希望这可以帮助。
This code works for me (using an Access database with fields ID and Height, I dropped a TDBChart, TADODataSet, and a TButton on a form):
Note that the Datasource should be a TTable, TQuery, or TDataSet (not a TDataSource - go figure!).
Hope this helps.
TChart 每次设置时都会刷新查询
因此,将此命令移至块的末尾(例如,在设置系列属性之后)。
TChart refreshes the query each time you set
so, move this command to the end of your block (e.g. after you've set up the series properties).