1、在布尔字段中,常用的一种方法是用其来表示性别,但在显示给用户看时,最好又能显示成男、女,以方便用户。
双击ADOquery,在弹出的窗体中生成静态字段,然后你点取这些静态字段,在OnGetText和OnSetText事件中做如下。(我一般习惯用男1女0,想像丰富一点,嘿)
procedure TfrmData.TADOquery1SEXGetText(Sender: TField; var Text: String;
DisplayText: Boolean);
begin
if sender.Value=1 then Text := '男';
if sender.Value=0 then Text := '女';
end;
procedure TfrmData.TADOquery1SEXSetText(Sender: TField;
const Text: String);
begin
if Text = '男' then sender.value :=1;
if Text = '女' then sender.value :=0;
end;
2、数值型字段,有时我们喜欢用数值型来表示一些选值,例如:1、小学生;2、中学生;3、大学生;等等,那么同样可以参照上面布尔型的方法
procedure TfrmData.TADOquery1studentTypeGetText(Sender: TField; var Text: String;
DisplayText: Boolean);
begin
if sender.Value=0 then Text := '小学生';
if sender.Value=1 then Text := '中学生';
if sender.Value=2 then Text := '大学生';
...
end;
procedure TfrmData.TADOquery1studentTypeSetText(Sender: TField;
const Text: String);
begin
if Text = '小学生' then sender.value :=0;
if Text = '中学生' then sender.value :=1;
if Text = '大学生' then sender.value :=2;
...
end;
3、有时还要根据需要生成一个在数据库中不存在的字段,用来显示一些汇总信息,这个叫计算字段的意思,现在你的DBGRIDEH所关联的DATASET中(假设是ADOQUERY1),双击,在弹出的窗体中生成一个计算字段,假设是 工资总额,然后在如下事件中写
procedure Tfrm_DBParamSet.ADOQuery1CalcFields(DataSet: TDataSet);
begin
Dataset.FieldByName('工资总额').Value:=
Dataset.FieldByName('奖金').Value+Dataset.FieldByName('补贴').Value;
end;