Версия для печати темы
Нажмите сюда для просмотра этой темы в оригинальном формате
Форум программистов > Delphi: Для новичков > DBGrig как при вставке строки задать значения


Автор: goldstrong 28.2.2011, 08:15
Доброго времени суток...
Хочу, чтобы в DBGrid когда пользователь добавляет запись, то вставлялась не пустая строка, а забиты значения по умолчанию, которые пользователь мог бы редактировать.. Возможно ли такое??? Или при записи значений в БД, когда поле пустое, то ему присваивалось это значение.. 

Автор: goldstrong 28.2.2011, 10:09
Спасибо.. Разобрался сам... Проблему решил следующим образом
Код

procedure TfrmSimpSpr.DBGrid1DrawColumnCell(Sender: TObject; const Rect: TRect;
  DataCol: Integer; Column: TColumn; State: TGridDrawState);
begin
if Column.FieldName = 'FILID' then
  if (Column.Field.IsNull) then
    Column.Field.AsInteger := 66;
end;

Автор: superVad 28.2.2011, 11:15
И чего всех так и тянет манипулировать данными через грид... Он же всего лишь отображает данные.

goldstrong, это делается через AfterInsert событие датасета к которому и присоединен грид.

Автор: goldstrong 28.2.2011, 12:28
superVad, спасибо за совет..

Автор: northener 28.2.2011, 14:28
Цитата(superVad @  28.2.2011,  11:15 Найти цитируемый пост)
это делается через AfterInsert

Вообще-то обычно для подобного используется событие OnNewRecord.

Автор: superVad 28.2.2011, 16:18
Цитата(northener @  28.2.2011,  13:28 Найти цитируемый пост)
Вообще-то обычно для подобного используется событие OnNewRecord.

Ну или так даже правильнее.
Но если, что, то AfterInsert тоже вполне работает.

Powered by Invision Power Board (http://www.invisionboard.com)
© Invision Power Services (http://www.invisionpower.com)