cxGrid在最后一个字段上的新记录输入

时间:2011-01-22 10:53:38

标签: delphi tcxgrid

当用户在当前记录的最后一个字段上按Enter键时,我很难让TcxGrid附加一条新记录,但是我找不到任何可以帮助我实现此目的的属性。

我尝试使用以下代码设置网格视图的OnKeyDown事件(TcxGridDBTableView)

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

但是代码由于某种原因没有执行......

关于如何在最后一个字段OnEnter事件上追加记录的任何想法都将受到高度赞赏。

谢谢。

2 个答案:

答案 0 :(得分:4)

为什么不简单:

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

答案 1 :(得分:0)

似乎解决这个问题的方法是设置网格视图的OnEditKeyDown / Up / Press以便处理这种类型的功能,因此:

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;