在DBGrid中把其中一列的值显示为0.00的形式!
如: 100 显示为:100.00
如果用控件ADOQuery绑定DataSource和DBGrid的话可以实现!
但我现在要动态生成ADOQuery和DataSource该怎么写?
下面的代码不能实现,请高手指点!!
var
Form1: TForm1;
Qry: TADOQuery;
Src: TDataSource;
Qrykmye: TBCDField;procedure TForm1.BitBtn1Click(Sender: TObject);
begin
Qry:=TADOQuery.Create(nil);
try
with Qry do
begin
Connection:=Con_KMZYDY;
Close;
SQL.Clear;
SQL.Add('select kmdm,kmye from kmdm'); //kmdm:科目代码,kmye:科目余额
Open;
end;
Qrykmye:= TBCDField.Create(nil);
Qrykmye.FieldName:=Qry.Fields[1].FieldName;
Qrykmye.DisplayFormat:='#0.00';
Src:=TDataSource.Create(nil);
Src.DataSet:=Qry;
DBGrid1.DataSource:=Src;
except
on e:exception do
begin
ShowMessage(E.Message);
Raise;
end;
end;
end;
如: 100 显示为:100.00
如果用控件ADOQuery绑定DataSource和DBGrid的话可以实现!
但我现在要动态生成ADOQuery和DataSource该怎么写?
下面的代码不能实现,请高手指点!!
var
Form1: TForm1;
Qry: TADOQuery;
Src: TDataSource;
Qrykmye: TBCDField;procedure TForm1.BitBtn1Click(Sender: TObject);
begin
Qry:=TADOQuery.Create(nil);
try
with Qry do
begin
Connection:=Con_KMZYDY;
Close;
SQL.Clear;
SQL.Add('select kmdm,kmye from kmdm'); //kmdm:科目代码,kmye:科目余额
Open;
end;
Qrykmye:= TBCDField.Create(nil);
Qrykmye.FieldName:=Qry.Fields[1].FieldName;
Qrykmye.DisplayFormat:='#0.00';
Src:=TDataSource.Create(nil);
Src.DataSet:=Qry;
DBGrid1.DataSource:=Src;
except
on e:exception do
begin
ShowMessage(E.Message);
Raise;
end;
end;
end;
begin
TBCDField(ADOQuery1.FieldByName(s)).DisplayFormat:='0.00';///s为字段名
end;