我隐藏了一个字段,因此当它显示时(在复选框选中时)它会执行一定的计算。隐藏字段上的计算
procedure TForm1.cxCheckBox1Click(Sender: TObject);
var
C:TcxGridDBColumn;
begin
if ABSTable1.FieldByName('CENIK_IME').AsString = 'PAK' then begin
C := cxGrid2dbtableview1.GetColumnByFieldName('TT');
if Assigned(C) then C.Visible := not C.Visible;
ABSQuery2.Edit;
ABSQuery2.FieldByName('TOTAL').AsCurrency := (ABSQuery2.FieldByName('TOTAL').AsCurrency) + (ABSQuery2.FieldByName('TT').AsCurrency);
ABSQuery2.Refresh;
end;
end;
问题是,我每次选中或清除该复选框我的总变得越来越大。任何方式来防止每次检查或取消选中时复选框加总?
我也有这对查询的计算领域;
procedure TForm1.ABSQuery2CalcFields(DataSet: TDataSet);
begin
ABSQuery2.FieldByName('TT').Value:= (ABSQuery2.FieldByName('DAYS').AsCurrency) * 1.01 ;
end;
这是所有在临时表中完成的,仅用于临时表。内容被删除所有的时间....
保留一个字段,表明您是否已将TT添加到TOTAL。 –
隐藏/取消隐藏栏目与事物有什么关系? (什么决定列是否应该是可见的/不可见的?)我也不确定代码在OnCalcFields中的意图 - 仅仅因为复选框被选中/未选中,“Days”将如何改变? –