| Delphi Tips & Tricks | softsale > Delphi Tips & Tricks |
| < poprzednia rada | następna rada > |
Nawigacja w DBGrid przy pomocy klawisza EnterNiekiedy użytkownik chce, aby nawigacja w gridzie odbywała się przy pomocu klawisza Enter a nie Tab. Klawisz Tab działa w ten sposób, że po przejściu do ostatniej kolumny grida kursor jest przesuwany do następnego wiersza. Poniższa procedura realizuje nawigację w gridzie za pomocą klawisza Enter (w tym przypadku należy pamiętać o ustawieniu własność KeyPreview formy na true). procedure TForm1.FormKeyPress(Sender: TObject; var Key: Char);
begin
{ jeżeli klawisz Enter}
if Key = #13 then
if not (ActiveControl is TDBGrid) then
begin { jeżeli nie DBgrid }
Key := #0;
{ przesuń się do następnego elementu kontrolnego }
Perform(WM_NEXTDLGCTL, 0, 0);
end
else
if (ActiveControl is TDBGrid) then { jeżeli to nie DBGrid }
with TDBGrid(ActiveControl) do
if selectedindex < (fieldcount -1) then
{ przesuń się po polu tablicy }
selectedindex := selectedindex +1
else
begin
selectedindex:=0;
// odkomentowanie tej linii spowoduje takie
// działanie jak TAB, jeśli w options dbgrida
// ustawiono dgtabs na true
// table1.next;
end
end;
Wyjście z DBGrida np przez klawisz Esc do elementu kontrolnego, na który ustawiamy focus (tu przycisk). procedure TForm1.DBGrid1KeyPress(Sender: TObject;
var Key: Char);
begin
if key=#27 then
begin
button1.setfocus;
end;
|
|
SOFTSALE - Oprogramowanie i Szkolenia softsale@softsale.com.pl 03-565 Warszawa , ul. Borzymowska 43 lok. 301C tel/fax:4084840,GSM:0607612428 |