CXGRID Neuer Datensatz auf dem letzten Feld Eingabetaste
Frage
Ich habe Mühe, einen TCXGrid zu erstellen, um einen neuen Datensatz anzuhängen, wenn der Benutzer auf dem letzten Feld des aktuellen Datensatzes die Taste eingreift. Ich habe jedoch keine Eigenschaft gefunden, die mir helfen könnte, dies zu erreichen.
Ich habe versucht, das Onkeydown -Ereignis der Grid -Ansicht (TCXGridDBTableView) mit dem folgenden Code zu setzen
if Key = VK_RETURN then
if PaymentViewBetragNetto.Focused then
PaymentView.DataController.AppendRecord;
Der Code wird jedoch aus irgendeinem Grund nicht ausgeführt ...
Jede Idee, wie man einen Rekord auf dem Last Field Onenter -Event anhängt, wäre sehr geschätzt.
Vielen Dank.
Lösung
Warum nicht einfach:
View.OptionBehavior.FocusFirstCellOnNewRecord = True,
View.OptionBehavior.GotoNextCellOnEnter = True,
View.OptionData.Appending = True
Andere Tipps
Es scheint, dass die Art und Weise, dies zu lösen, darin besteht, den OneditKeydown/Up/Drücken der Gitteransicht festzulegen, um diese Art von Funktionalität zu verarbeiten, daher:
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;