Jak zablokować edycję jednej kolumny DBGrid-a

0

Witam.

W jednej kolumnie DBGrida wyświetlam (w procedurze OnDrawColumnCell) CheckBox zamiast wartości logicznej. Wszystko działa OK, ale po wejściu w tryb edycji (kliknięcie 2 razy) zamiast CheckBox-a widać True/False. Wiem że można ustawić ReadOnly dla kolumny, ale to nic nie zmienia. Czy można zablokować możliwość edycji, ale tylko dla jednej kolumny ? Po zablokowaniu edycji całego DBGrida (wyłączenie dgEditing) CheckBox jest zawsze prawidłowy, ale tracę możliwość kopiowania zawartości innych kolumn do schowka, a to jest potrzebne :(

0
 procedure TPrzychForm.dbgrid1SelectEditor(Sender: TObject; Column: TColumn;
  var Editor: TWinControl);
begin
  if Column.FieldName='Nazwa_kolumny' then
  dbgrid1.Options:=dbgrid1.Options-[dgEditing]
  else
  dbgrid1.Options:=dbgrid1.Options+[dgEditing];
end;
0

Dzięki za odpowiedź, ale niestety nie potrafię "podłączyć" procedury SelectEditor do DBGrid-a :( Być może wymaga to jakieś innej odmiany DBGrida niż standard w Delphi XE ?

0
procedure TForm1.DBGrid1ColEnter(Sender: TObject);
begin
if dbgrid1.SelectedField.FieldName='NAZWA' then
dbgrid1.Options:=dbgrid1.Options-[dgEditing]
else
dbgrid1.Options:=dbgrid1.Options+[dgEditing];
end;

1 użytkowników online, w tym zalogowanych: 0, gości: 1