我DBchart中的series要动态生成
CDS的数据已经查好了然后我循环一边cds.eof
while not CDSTMP.Eof do
begin
with series do
begin
Marks.Callout.Brush.Color := clblack;//运行到这里会报错
//Project ....exe raised exception class EAccessViolation with message 'Access violation at address
// 00403B2E in module '....exe',Read of address EADAE800',Process stopped,........
Marks.Visible := true;
DataSource := CDSByTool;
XLabelsSource := 'EID';
//Gradient.Direction := gdTopBottom;
MultiBar := mbStacked;
XValues.Name := 'X';
XValues.Order := loAscending;
YValues.Name := 'Bar';
YValues.Order := loNone;
YValues.ValueSource := 'A'+IntToStr(tableNum)+'.TID';
end;
DBChart11.AddSeries(series);
CDSTMP.Next;
end;
怎么解决阿
CDS的数据已经查好了然后我循环一边cds.eof
while not CDSTMP.Eof do
begin
with series do
begin
Marks.Callout.Brush.Color := clblack;//运行到这里会报错
//Project ....exe raised exception class EAccessViolation with message 'Access violation at address
// 00403B2E in module '....exe',Read of address EADAE800',Process stopped,........
Marks.Visible := true;
DataSource := CDSByTool;
XLabelsSource := 'EID';
//Gradient.Direction := gdTopBottom;
MultiBar := mbStacked;
XValues.Name := 'X';
XValues.Order := loAscending;
YValues.Name := 'Bar';
YValues.Order := loNone;
YValues.ValueSource := 'A'+IntToStr(tableNum)+'.TID';
end;
DBChart11.AddSeries(series);
CDSTMP.Next;
end;
怎么解决阿
解决方案 »
- 關於MD5的加密函式
- 如何实现象IE浏览器的状态栏里的进度条的功能?
- 出个小小的题,关于Pos和Copy函数,看你用多少时间
- 关于treeview在多表中动态生成树的问题大家帮帮我分不够可以加在线等待。
- 请教各位帅哥与美女...........在线等
- 如何远程连接到一个装有sql server数据库的其中的一个数据库,假设sa密码为123
- 文件拷贝:用CopyFile拷贝多个文件,在拷贝之前,如何估计拷贝所用的时间?
- delphi 控制 word 增加一个表格时 , 能不能给这个表格起名称,访问表格时用名称访问
- 用delphi5.0+ado控件开发的access 2000数据库应用程序在发布时需要带哪些包?
- 怎样定义二维的Variant数组?
- 一个很简单的问题,希望能帮我解决。
- delphi在网页源码中如何分类出 特定字符串 知道开头和结尾的标示
一、添加Series之前,要删除已有的Series,只能从后往前删,否则出错:
for i:=Chart1.SeriesCount-1 downto 0 do begin Chart1.Series[i].Free; end;
二、运行时候创建一个Series, 有多种方法。1.Var MySeries : TBarSeries ; MySeries := TBarSeries.Create( Self ); MySeries.ParentChart := Chart1 ; 2.Chart1.AddSeries( TBarSeries.Create( Self ) ); 3.Var MyClass : TChartSeriesClass; MyClass := TBarSeries ; Chart1.AddSeries( MyClass.Create( Self ) );
在这里根据,用到循环结构动态添加多条Series。 for j:=0 to NXUGMU-1 do begin series:=TFastLineSeries.Create(Chart1); Chart1.AddSeries(Series); //动态增加series series.LinePen.Width:=2; //设定线宽 Chart1.Series[j].Title:='速度 '+StrVelocity[j]; //动态标题 randomize; end;
三、在chart中画出的曲线某个点上标记出该点的值 series.Marks.Visible:=True; Series.Marks.Style:=smsValue;四、固定TChart中的坐标,不使TChart中的坐标跟随Series的变化而变化//设置底座标 with Chart1.BottomAxis do begin Automatic:=false; Minimum:=0; LabelStyle := talText; end;
五、添加坐标值,自动绘制曲线 Chart1.Series[j].AddXY(Xzhi,Yzhi,Label,color);
Var MySeries : TBarSeries ; MySeries := TBarSeries.Create( Self ); MySeries.ParentChart := Chart1 ;
用这个方法行了
但是
Gradient.Direction := gdTopBottom;
MultiBar := mbStacked;
这俩个报错,说是没定义
是不是还要uses什么文件
DBChart11.AddSeries(series);我的这个方法循环添加series
为什么图表只显示了最后一个series
还有最后一个问题搞不懂就是Gradient.Direction := gdTopBottom;
MultiBar := mbStacked;
属性不能用为什么啊