我做的程序代码
OraQuery111.Open;
DBChart1.FreeAllSeries;//删除所有图形
series := TLineSeries.Create(DBChart1);//DBChar 名称
series.ParentChart := DBChart1;
series.DataSource:=OraQuery111 ;//链接的数据源
series.XValues.ValueSource:= OraQuery111.fieldbyname('XSHU000').AsVariant;//显示X轴对应的字段
series.YValues.valuesource := OraQuery111.fieldbyname('JCXMSCZHI').AsVariant; //显示Y轴对应的字段
DBChart1.AddSeries(series);
DBChart1.Series[ 0 ].Active := True;报错就在 :series.YValues.valuesource := OraQuery111.fieldbyna('JCXMSCZHI').AsVariant;
这一句。
如果换成 series.YValues.name := OraQuery111.fieldbyna('JCXMSCZHI').AsVariant;
不报错,但没图形

解决方案 »

  1.   

    楼上的兄弟是tchart的用法,
    我推荐楼主用tchart来代替dbchart.dbchart组件一定要装bde引擎才能用,麻烦.
    seriesp[i] := Tlineseries.Create(self);
    chart1.AddSeries(seriesp[i]);
    seriesp[i].addxy(xvalue,yvalue);series.YValues.name := OraQuery111.fieldbyna('JCXMSCZHI').AsVariant;
    不报错,但没图形
    当然,这个是series.YValues.name是series y轴的名称,并没有付值
      

  2.   

    建议使用 TChart控件,图形数据自己赋值上去,方便实现自己想法和显示要求!
    柱图有 AddBar 饼图有 AddPie 其他图形有 AddY 等等很多的数据画图方法.
      

  3.   

    Tchart使用方便,而且自带demo比较详细。
      

  4.   

    series.XValues.ValueSource:= 'XSHU000';//显示X轴对应的字段
    series.YValues.valuesource := 'JCXMSCZHI'; //显示Y轴对应的字段
      

  5.   

    看你的series是不是Tlineseries属性啊~~~~~??
      

  6.   

    Tlineseries对象好象没有y轴~~~~~