当用户在当前记录的最后一个字段上按Enter键时,我很难让TcxGrid附加一条新记录,但是我找不到任何可以帮助我实现此目的的属性。
我尝试使用以下代码设置网格视图的OnKeyDown事件(TcxGridDBTableView)
if Key = VK_RETURN then
if PaymentViewBetragNetto.Focused then
PaymentView.DataController.AppendRecord;
但是代码由于某种原因没有执行......
关于如何在最后一个字段OnEnter事件上追加记录的任何想法都将受到高度赞赏。
谢谢。
答案 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;