Hola barakuda.
Una opción sería utilizar la propiedad
Tag del
TButton con que aceptas, como flag para evaluarlo en el evento
BeforePost del
TDataSet:
Código Delphi
[-]
...
procedure TForm1.FormCreate(Sender: TObject);
begin
btnAceptar.Tag:= 0;
end;
procedure TForm1.DataSetBeforePost(DataSet: TDataSet);
begin
if btnAceptar.Tag = 0 then DataSet.Cancel; end;
procedure TForm1.btnAceptarClick(Sender: TObject);
begin
with DBGrid1.DataSource.DataSet do
begin
btnAceptar.Tag:= 1; Edit;
Post;
btnAceptar.Tag:= 0; end;
end;
...
Si se me una mejor opción te comento.
Saludos.