Акжан в сети - На уровень вверх(VCL) Как в TDBGrid pазpешить только опеpации UPDATE записей и запpетить INSERT/DELETE?

А я делаю так.

На DataSource, к которому прицеплен Grid, вешаю обработчик на событие OnStateChange.

Ниже текст типичного обратчика -

if DBGrid1.DataSource.DataSet.State in [dsEdit, dsInsert] then
  DBGrid1.Options := DBGrid1.Options + goRowSelect
else
  DBGrid1.Options := DBGrid1.Options - goRowSelect;

Дело в том, что если у Grid'а стоит опция goRowSelect, то из Grid'а невозможно добавить запись. Ну а когда програмно вызываешь редактирование или вставку, то курсор принимает обычный вид и все Ok.

Denis Kim

(2:5020/799.2)

Лучше использовать конструкцию "State in dsEditModes"

Max Belugin

belugin@bsd.lanit.ru

(2:5020/484.28)