DBGrid - Como tirar a edição de um campo numa grade editável

Top  Previous  Next

No evento ColEnter da Grid coloque mais ou menos estas instruções

 

procedure TAnaliseNecessidadeForm.FunciGridColEnter(Sender: TObject);

begin

  // NecessidadeQyMark - campo, do tipo TField

  

  if FunciGrid.SelectedField = NecessidadeQyMark then

    FunciGrid.Options:= FunciGrid.Options - [dgEditing] 

 // Tira a edição do campo selecionado... 

  else

    FunciGrid.Options:= FunciGrid.Options + [dgEditing];

    // ... caso contrario todo mundo de volta ao trabalho

end;