procedure TJvDBGrid.ChangeBoolean(const FieldValueChange: Shortint); // FieldValueChange = 9 -> invert, 0 -> check (true), -1 -> uncheck (false) begin if Assigned(FBooleanFieldToEdit) and BooleanEditor then begin DataLink.Edit; if DataLink.Editing then //<-------------- Added this Line begin if FBooleanFieldToEdit.IsNull or (FieldValueChange <> JvGridBool_INVERT) then begin if FBooleanFieldToEdit.DataType = ftBoolean then FBooleanFieldToEdit.Value := (FieldValueChange = JvGridBool_CHECK) else FBooleanFieldToEdit.Value := FieldValueChange + 1; end else if FBooleanFieldToEdit.DataType = ftBoolean then FBooleanFieldToEdit.Value := not FBooleanFieldToEdit.AsBoolean else FBooleanFieldToEdit.Value := 1 - Abs(FBooleanFieldToEdit.AsInteger); InvalidateCell(Col, Row); end; //<-------------- Added this Line end; FBooleanFieldToEdit := nil; end;