Pregunta

Estoy luchando para hacer una TcxGrid para añadir un nuevo registro cada vez que el usuario pulsa la tecla Intro en el último campo del registro actual, sin embargo, no he encontrado ninguna propiedad que pueda ayudar a lograr esto.

I tratado de establecer el evento OnKeyDown de la vista de cuadrícula (TcxGridDBTableView), con el siguiente código

if Key = VK_RETURN then
  if PaymentViewBetragNetto.Focused then
    PaymentView.DataController.AppendRecord;

Sin embargo, el código no se ejecuta por alguna razón ...

Cualquier idea sobre cómo añadir registro en último campo AlEntrar caso sería muy apreciada.

Gracias.

¿Fue útil?

Solución

¿Por qué no es sencillo:

View.OptionBehavior.FocusFirstCellOnNewRecord = True, 
View.OptionBehavior.GotoNextCellOnEnter = True, 
View.OptionData.Appending = True

Otros consejos

Parece que la manera de resolver esto es para establecer el OnEditKeyDown / Arriba / Prensa de la vista de cuadrícula con el fin de manejar este tipo de funcionalidad, por lo tanto:

procedure XXX.PaymentViewEditKeyUp(Sender: TcxCustomGridTableView;
  AItem: TcxCustomGridTableItem; AEdit: TcxCustomEdit; var Key: Word;
  Shift: TShiftState);
begin
  if Key = VK_RETURN then
    if PaymentViewBetragNetto.Focused then begin
      ADataModule.ATable.Append;
      PaymentViewAccount.FocusWithSelection;
    end; // if PaymentViewBetragNetto.Focused then begin
end;
Licenciado bajo: CC-BY-SA con atribución
No afiliado a StackOverflow
scroll top