Végezze el az Enter billentyű működését, mint a Tab a Delphi alkalmazásokban

Tudjuk, hogy általában a Tab gomb megnyomásával a beviteli fókusz a következő vezérlőelemre, a Shift-Tab az előzőre helyezkedik el az űrlap laponkénti sorrendjében. Amikor dolgozik Windows alkalmazások, néhány felhasználó intuitív módon azt várja el, hogy az Enter gomb Tab billentyűként viselkedik.

Az alábbi példák azzal a feltételezéssel vannak írva, hogy az űrlapon nincs alapértelmezett gomb. Ha az űrlap egy gombot tartalmaz, amelynek Alapértelmezett tulajdonsága True értékre van állítva, nyomja meg az Enter gombot futásidejű végrehajtja a gomb OnClick eseménykezelőjében szereplő bármely kódot.

~~~~~~~~~~~~~~~~~~~~~~~~~
eljárás TForm1.Edit1KeyPress (Feladó: TObject; var Kulcs: Char);
kezdődik
Ha Key = # 13, akkor kezdje meg
Ha HiWord (GetKeyState (VK_SHIFT)) <> 0, akkor
SelectNext (Küldő mint TWinControl, hamis, igaz)
más
SelectNext (Küldő mint TWinControl, True, True);
Kulcs: = # 0
végén;
végén;
~~~~~~~~~~~~~~~~~~~~~~~~~

~~~~~~~~~~~~~~~~~~~~~~~~~
eljárás TForm1.DBGrid1KeyPress (Feladó: TObject; var Kulcs: Char);

instagram viewer

kezdődik
Ha Key = # 13, akkor kezdje meg
Ha HiWord (GetKeyState (VK_SHIFT)) <> 0, akkor kezdje meg
(küldő, mint TDBGrid) csinálni
ha kiválasztottindex> 0, akkor
kiválasztott index: = kiválasztott index - 1
egyébként kezdődik
Adatforrás. DataSet. Előzetes;
kiválasztott index: = mezőszám - 1;
végén;
a másik vége kezdődik
(küldő, mint TDBGrid) csinálni
ha kiválasztott index selectedindex: = selectedindex + 1
egyébként kezdődik
Adatforrás. DataSet. Következő;
kiválasztott index: = 0;
végén;
végén;
Kulcs: = # 0
végén;
végén;
~~~~~~~~~~~~~~~~~~~~~~~~~