![]() |
Im Stringgrid mit Enter in nächste Zelle
Hi,
das bezieht sich hier drauf: ![]() Es geht um Enter zu benutzen, um in ein anderes Feld zu gelangen. Hierzu muß man KeyPreview der Form auf true setzen und das OnKeyDown-Ereignis bearbeiten. Steht alles in dem alten Thread. Nun lege man mal ein Edit-Feld und ein Stringgrid auf eine Form. Beim Verlassen des Edits soll der Cursor in der ersten Zelle des Stringgrids stehen. Mit Return gehts dann aber nicht weiter von Zelle zu Zelle. Gehe ich so vor, wie in dem Thread beschrieben, hängt der Cursor in der ersten Zelle fest. |
Moin Hansa,
im OnKeyDown oder OnKeyUp des Stringgrids:
Delphi-Quellcode:
if Key = VK_RETURN then begin
SendMessage(StringGrid1.Handle,WM_KEYDOWN,VK_DOWN,0); SendMessage(StringGrid1.Handle,WM_KEYUP,VK_DOWN,0); end; |
Hi,
ich glaube es liegt daran, daß die Form ein OnKeyDown hat, das Stringgrid aber auch. Jetzt habe ich das EnterTab da eingebaut, nützt aber nichts. Übrigens
Code:
geht auch nicht, trotz der Abfrage wird alles akzeptiert. 8)
if not (key in [48..57,8,13]) then
Delphi-Quellcode:
procedure TForm1.StringGrid1KeyDown(Sender: TObject; var Key: Word;
Shift: TShiftState); var Cell_ID : string; begin // EnterTab(Sender,Key,Shift,[],[],true); IF StringGrid1.Col=1 THEN BEGIN case Key of VK_F9 : SucheArtikel; end; END; if not (key in [48..57,8,13]) then key := 0; with StringGrid1 do begin case key of VK_RETURN : begin ... end; VK_ESCAPE : begin Transaction.Commit; Close; end; end; end; end; |
Zitat:
|
Moin Hansa,
Zitat:
Ich hab' eben auch mal ausprobiert, was passiert, wenn ich KeyPreview auf true und eine OnKeyDown im Hauptformular habe: Es funktioniert trotzdem. BTW: Wenn Du key auf 48..57,8, 13 einschränkst, nutzt Dir Dein Case key of VK_ESCAPE nichts. Den hast Du nicht zugelassen ;-) |
stimmt, 27 habe ich nicht zugelassen :mrgreen:
|
Alle Zeitangaben in WEZ +1. Es ist jetzt 18:58 Uhr. |
Powered by vBulletin® Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024-2025 by Thomas Breitkreuz