2011-01-22 18 views
1

私は現在のレコードの最後のフィールドでEnterキーを押すたびにTcxGridに新しいレコードを追加するのに苦労していますが、達成するのに役立つプロパティは見つかりませんでしたこの。cxGrid最後のフィールドに新しいレコードを入力します

私は

に...コードが何らかの理由で実行されていませんが、次のコード

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

とグリッドビュー(TcxGridDBTableView)のOnKeyDownイベントを設定する方法上の任意のアイデアを試してみました最後のフィールドOnEnterイベントにレコードを追加すると非常に感謝しています。

ありがとうございます。

答えて

4

なぜ単純ではない:

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

右wthは私が思っていたか? altho '私はまた、上記のプロパティを設定し、何らかの理由で動作しなかったと信じています。なぜなら、イベントやその他のものに縛られているからです。 – ComputerSaysNo

+0

それを動作させるには、私も追加する必要がありますView.OptionsBehavior.FocusCellOnCycle = True – kibab

0

これを解決する方法は、したがって、この種の機能を処理するために、グリッドビューのOnEditKeyDown /アップ/プレスを設定することがあるようです:

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; 
関連する問題