目的:TDBChart(或是TChart)  和 数据源分离开。也就是说显示和数据源不在同一台机器上。并且能够灵活的以各种形式显示出来(比如以饼图显示或是以柱图显示等等),关键的一点是要具有非常的通用性。方案一.  定义一个类  TYPE 
     MyClass=CLASS
FTChart:TDBChart;
//有一个能和数据源关联的属性。 FDataSource:TDataSource;
//设置数据源
proceudre SetFDdataSource(ASource:TDataSource); //在此类创建对象时建立起与界面上TDBChart的关联.
constructor Create(ADBChart:TDBChart);

//传入一个标示值以确定要以哪种方式来显示
//比如以柱形或是饼图等等
procedure ShowStyle(Flag:Integer); //显示各种图形的通用方法
proceudre Display(A:);//这个参数类型应该是? Destructor Destroy;
     END; //建立关联
constructor Create(ADBChart:TDBChart);
begin
if ADBChart=nil then exit;
FTChart:=ADBChart;
end; procedure ShowStyle(Flag:Integer);
begin
case Flag do 
  1: //调用柱形显示的方法;
  2: //调用饼图显示的方法;
  3:
  4:
  //等等各种图形的显示方法;
end;
end;方案二. 从TChart 或是从 TDBChart 继承下来。再次封装一下。以达到以上所说的目 的。这个方案目前没有想好特来论谈寻求帮助!