我想在设计的时候不添加Series,而是在程序里面根据需要添加,可是在程序中,怎么实现在设计时候的Edit Chart...的功能,要求最简单的就可以了!谢谢大家关注!
解决方案 »
- adoquery执行sql语句却在adotable里显示的问题
- 这里躺着一个普通的战士(转)
- 怎样用程序实现对一个文件夹里的图片连续进行处理
- 调用某程序CALL
- delphi对access数据操作,like in()出错!!
- Borland BDE Oracle driver可能存在重大缺陷
- 如何将string类型转换成char类型??????
- 如何在activexform中在下载cab文件之前 弹出窗口?能用模式窗口么?
- 如何定义一个动态的函数或过程
- 高分,如何用API实现将“shift”按键“锁住”与“释放”?
- ADOQuery的Locate函数如何实现日期时间的模糊查找?
- C/S结构系统的发布?
begin
EditChart(self, chart1)
end;//如果是delphi6.0的话,就必须引用一个运行时包;
project --> option --> packages --> build with runtime pages --> 增加teeui;
procedure TForm_SJFX_XSDDFX.ShowChart(itype: integer; Dset: TQuery; xlabel,
yvalues: string);
var
vPie: TPieSeries;
vBar: TBarSeries;
vLine: TLineSeries;
i: integer;
begin
while DBChart.SeriesCount > 0 do DBChart.SeriesList[0].Destroy;
DBChart.Title.Text.Clear;
DBChart.Title.Text.Add(ChartTitle);
DBChart.LeftAxis.Title.Caption := yvalues;
DBChart.BottomAxis.Title.Caption := xlabel;
//
if itype = 0 then
begin
vBar := TBarSeries.Create(nil);
vBar.ParentChart := DBChart;
vBar.DataSource := Dset;
vBar.YValues.ValueSource := yvalues;
vBar.XLabelsSource := xlabel;
vBar.Marks.Style := smsValue;
DBChart.AddSeries(vBar);
end
else if itype = 2 then
begin
vPie := TPieSeries.Create(nil);
vPie.ParentChart := DBChart;
vPie.DataSource := Dset;
vPie.YValues.ValueSource := yvalues;
vPie.XLabelsSource := xlabel;
vPie.Marks.Style := smsLabelPercent;
DBChart.AddSeries(vPie);
end
else
begin
vLine := TLineSeries.Create(nil);
vLine.ParentChart := DBChart;
vLine.DataSource := Dset;
vLine.YValues.ValueSource := yvalues;
vLine.XLabelsSource := xlabel;
vLine.Marks.Style := smsLabelPercent;
DBChart.AddSeries(vLine);
end;
var
aseries:TchartSeries;
begin
aseries:=chart1.SeriesList.Series[0];
ChangeSeriesType(aseries,TBarSeries);
end;