界面都是调用下面这个过程的,其它界面调用没问题,
而有一个界面出内存错误,但去掉TLineSeries类型的话就没问题;代码如下:
//图表类型
procedure Change_Chart_Type(PageCntrl: TPageControl; tmpChart: TChartSeries);
begin
if PageCntrl.ActivePageIndex = 0 then
begin
tmpChart.Marks.Style:= smsValue;
ChangeSeriesType(tmpChart, TBarSeries);
end
else if PageCntrl.ActivePageIndex = 1 then
begin
tmpChart.Marks.Style:= smsLabel;
ChangeSeriesType(tmpChart, TPieSeries);
end
else if PageCntrl.ActivePageIndex = 2 then
begin
tmpChart.Marks.Style:= smsValue;
ChangeSeriesType(tmpChart, TLineSeries); //有内存错误
//ChangeSeriesType(tmpChart, TBarSeries); //无内存错误,但上面已经有了TBarSeries类型
end;
tmpChart.Active:= true;
tmpChart.RefreshSeries;
end;
而有一个界面出内存错误,但去掉TLineSeries类型的话就没问题;代码如下:
//图表类型
procedure Change_Chart_Type(PageCntrl: TPageControl; tmpChart: TChartSeries);
begin
if PageCntrl.ActivePageIndex = 0 then
begin
tmpChart.Marks.Style:= smsValue;
ChangeSeriesType(tmpChart, TBarSeries);
end
else if PageCntrl.ActivePageIndex = 1 then
begin
tmpChart.Marks.Style:= smsLabel;
ChangeSeriesType(tmpChart, TPieSeries);
end
else if PageCntrl.ActivePageIndex = 2 then
begin
tmpChart.Marks.Style:= smsValue;
ChangeSeriesType(tmpChart, TLineSeries); //有内存错误
//ChangeSeriesType(tmpChart, TBarSeries); //无内存错误,但上面已经有了TBarSeries类型
end;
tmpChart.Active:= true;
tmpChart.RefreshSeries;
end;
解决方案 »
- 请教一个FireBird 数据库中 SQl 的写法
- 两台异地ADSL宽带上网(没有固定ip)的电脑,能否使用TCPServer、TCPClient进行通讯?
- 看一下这个问题,(在线)
- StringGrid怎么用
- 关于 QuickRept 的打印问题,请进。。。。。。。。
- 关于ADOQuery的问题。在线等待...
- 动态数组的释放与重定义该动态数组的长度?
- fastreport MasterData 能否合计
- 请问StringGrid能像EXECL一样在某一列中进行单元格合并吗?
- 自动产生数据库的表,大家都会;若连数据库都没有,有没有办法产生?
- 祝賀三國升猩猩
- 获取网页源码与ListView的相关问题,高分求。谢谢。
TLineSeries, TAreaSeries and the TPointSeries.这三个可以
应该是其他部分代码的问题吧? 我刚试了下Bar 和Line可以转换
TLineSeries还是有错误,程序直接死掉。
代码如下:
else if PageControl1.ActivePageIndex = 2 then
begin
DBChart1.Legend.Visible:= true; DBChart1.Series[1].Free;
DBChart1.Series[0].Free; DBChart1.AddSeries( TLineSeries.Create(Self) );
DBChart1.AddSeries( TLineSeries.Create(Self) ); tmpChart:= DBChart1.Series[0];
tmpChart2:= DBChart1.Series[1]; tmpChart.Marks.Style:= smsValue;
tmpChart2.Marks.Style:= smsValue; tmpChart.Active:= true;
tmpChart2.Active:= false;
//设置dataSource
Chart_GetShow();
end;