Resulta que tengo un programa donde hay una grilla de Items de un pedido, de cada fila solo se puede modificar las columnas de tarifa(precio venta) y porcentage de descuento, no uso el boton de los navegadores, sino botones normales, hay una relacion maestro detalle con la tabla clientes, el problema es al editar alguna linea de pedido, hago clic en mi boton editar que tiene el siguiente codigo:
Código Delphi
[-]
procedure TW_TARIFARIOS.bbt_editar_tarClick(Sender: TObject);
begin
ds_detail.DataSet.Edit;
dbg_detail.SetFocus;
dbg_detail.SelectedIndex:=8;
.
.
.
/*mediante un procedure activo y desactivo los botones involucrados*/
/*aqui esta parte del codigo*/
bbt_aceptar_tar.Enabled:=true;
bbt_cancelar_tar.Enabled:=true;
bbt_editar_tar.Enabled:=false;
.
.
.
end;
El problema es que si hago click en otro registro de la grilla o preciono la flecha hacia abajo o arriba, automáticamente la grilla hace un post pero nunca se llama a este codigo
Código Delphi
[-]
procedure TW_TARIFARIOS.bbt_aceptar_tarClick(Sender: TObject);
begin
ds_detail.DataSet.Post;
.
.
.
/*mediante un procedure activo y desactivo los botones involucrados*/
/*aqui esta parte del codigo*/
bbt_aceptar_tar.Enabled:=false;
bbt_cancelar_tar.Enabled:=false;
bbt_editar_tar.Enabled:=true;
.
.
.
end;
procedure TW_TARIFARIOS.bbt_cancelar_tarClick(Sender: TObject);
begin
ds_detail.DataSet.Cancel;
.
.
.
bbt_aceptar_tar.Enabled:=false;
bbt_cancelar_tar.Enabled:=false;
bbt_editar_tar.Enabled:=true;
.
.
.
end;
Pregunta:
¿Como puedo hacer que la grilla no se mueva del registro actual si este esta en modo de edicion o inserción?
Gracias por su ayuda.