Sisestage sisestusklahv toimima nagu vahekaart Delphi rakendustes

Me teame, et üldiselt liigub klahvi Tab vajutamine sisestuse fookuse järgmisele juhtelemendile ja Shift-Tab eelmisele vormi sakkide järjekorras. Kui töötate koos Windowsi rakendused, eeldavad mõned kasutajad intuitiivselt, et Enter-klahv käitub nagu Tab-klahv.

Allpool toodud näited on kirjutatud eeldusel, et vormil pole vaikenuppu. Kui teie vorm sisaldab nuppu, mille vaikeomaduseks on seatud True, vajutage sisestusklahvi Enter juures tööaeg käivitab suvalise koodi, mis asub nupu OnClicki sündmuste käitlejas.

~~~~~~~~~~~~~~~~~~~~~~~~~
protseduur TForm1.Edit1KeyPress (saatja: TObject; var võti: Char);
alustada
Kui võti = # 13, siis alustage
Kui HiWord (GetKeyState (VK_SHIFT)) <> 0, siis
SelectNext (saatja kui TWinControl, vale, tõene)
muud
SelectNext (saatja kui TWinControl, True, True);
Võti: = # 0
lõpp;
lõpp;
~~~~~~~~~~~~~~~~~~~~~~~~~

~~~~~~~~~~~~~~~~~~~~~~~~~
protseduur TForm1.DBGrid1KeyPress (saatja: TObject; var võti: Char);
alustada
Kui võti = # 13, siis alustage
Kui HiWord (GetKeyState (VK_SHIFT)) <> 0, siis alustage

instagram viewer

koos (Saatja kui TDBGrid) teha
kui valitud on indeks> 0, siis
valitud indeks: = valitud indeks - 1
muidu algab
Andmeallikas. DataSet. Enne;
valitud indeks: = väljade arv - 1;
lõpp;
lõpp muidu algab
koos (Saatja kui TDBGrid) teha
kui valitud on indeks valitud indeks: = valitud indeks + 1
muidu algab
Andmeallikas. DataSet. Järgmine;
valitud indeks: = 0;
lõpp;
lõpp;
Võti: = # 0
lõpp;
lõpp;
~~~~~~~~~~~~~~~~~~~~~~~~~

instagram story viewer