各位师兄好啊,N久没来了.第一次使用DBChart1做几个柱图.遇到几个问题请教.
1\如何动态指定DBChart1.Series[0]的数据源.
因为我数据源是用ADOQUERY.SQL的内容要动态生成,不能定死.可是用以下语句却无法运行.
DBChart1.Series[0].DataSources:=adoquery1;
2\如何将图显示出来
        DBChart1.Series[0].XValues.name:='x';
        DBChart1.Series[0].XLabelsSource:='w_cur';-------X坐标的内容
        DBChart1.Series[0].YValues.ValueSource :='k_count';---------Y坐标的内容
但程序运行后,却没有显示出图来.不知错在哪里了?
3\还有就是DBChart不知道能不能做这样的图
比如我有一表
select w_cur,k_count,w_count from work_bao
w_cur:用户名,k_count:标准次数,w_count:实际次数想要的效果就是,X坐标为各个用户名,而Y坐标能同时显示同一用户的标准次数和实际次数,在图上
可以一目了然地看出同一用户标准次数和实际次数和差距.谢谢请教.

解决方案 »

  1.   

    应该可以动态的。帮你顶一个例子dbchart1.seriers[0].add(qurry1.fieldbyname('一月数量'), '一月',clred);
    dbchart1.seriers[1].add(qurry1.fieldbyname('二月数量'), '二月',clred);.
    .
    .
    .
      

  2.   

    1,2:可能是没勾选 "MARKS"下的VISIBLE:
    双击DBCHART-->选"SERIES"选项卡-->选"MARKS"选项卡-->勾选VISIBLE-->选"STYLE"的值为"VALUES";
    在程序中用语句:
    dbchart1.series[0].add(200,'一月');
    dbchart1.series[0].add(220,'二月');
           .
           .
           .
    3.当然是可以,只要你用两个SERIES即可:
    dbchart1.series[1].add(200,'一月');
    dbchart1.series[1].add(220,'二月');
    ......