Dbgridの横計

解決


数正  2008-03-01 15:22:08  No: 29979  IP: 192.*.*.*

Dbgridで横に数値を入力していき、右に横計を表示したいと思っています。
ONExitに↓のように書きましたが、マウスで下の行とかクリックすると、
ぜんぜん計算してくれません。どうすればいいかと・・・

procedure Tfm.DBGrid1Exit(Sender: TObject);
begin
  DBG.Edit;
  DBG.FieldByName('合計').AsInteger :=      DBG.FieldByName('数1').AsInteger
          + DBG.FieldByName('数2').AsInteger;
  DBG.post;

end;

編集 削除
HOta  2008-03-01 17:35:39  No: 29980  IP: 192.*.*.*

DBGridの場合は、DataSet側で計算します。
例えば、TQueryに、'合計'を計算項目として加えて、のOnCulcイベントで
FieldByName('合計').asinteger :=
FieldByName('数1').AsInteger + FieldByName('数2').AsInteger;
とすればOK

編集 削除
数正  2008-03-04 20:14:19  No: 29981  IP: 192.*.*.*

HOtaさん。無事解決しました。ありがとうございます

編集 削除