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.

War es hilfreich?

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;
Lizenziert unter: CC-BY-SA mit Zuschreibung
Nicht verbunden mit StackOverflow
scroll top