Auch wenn der Thread schon was älter ist, stand ich auch grad vor dem Problem.
Nach langem Grübeln, studieren und suchen bin ich drauf gekommen, das das Problem mit TAB,Arrows usw,
eigentlich garnicht am VST liegt, sondern an den Eingabe-Controls. Ein TEdit kann halt nix mit TAB anfangen
Also verfolge ich grad folgenden Lösungs-Ansatz:
Delphi-Quellcode:
INTERFACE
TYPE
TMyEdit = class(TEdit)
PRIVATE
procedure WMGetDlgCode(var Message: TWMGetDlgCode); message WM_GETDLGCODE;
end;
IMPLEMENTATION
procedure TMyEdit.WMGetDlgCode(var Message: TWMGetDlgCode);
begin
Message.Result := DLGC_WANTCHARS or DLGC_WANTARROWS or DLGC_WANTTAB;
end;
Dann im Editor statt TEdit, TMyEdit benutzen und einen Event-Handler für KeyDown des Edit-Felds
reinhängen und schon kannst du die entprechenden Aktionen ausführen
Fehlt also eigentlich nur das weiterswitchen auf die nächste Column oder das beenden des Edit-Modes.