Laat de Enter-toets werken als tabblad in Delphi-applicaties

click fraud protection

We weten dat over het algemeen het indrukken van de Tab-toets de invoerfocus verplaatst naar het volgende besturingselement en Shift-Tab naar de vorige in de tabvolgorde van het formulier. Bij het werken met Windows-toepassingen, sommige gebruikers verwachten intuïtief dat de Enter-toets zich gedraagt ​​als een Tab-toets.

De onderstaande voorbeelden zijn geschreven in de veronderstelling dat er geen standaardknop op het formulier staat. Als uw formulier een knop bevat waarvan de eigenschap Default is ingesteld op True, drukt u op Enter bij looptijd voert elke code uit die is opgenomen in de OnClick-gebeurtenishandler van de knop.

~~~~~~~~~~~~~~~~~~~~~~~~~
procedure TForm1.Edit1KeyPress (Afzender: TObject; var Sleutel: Char);
beginnen
If Key = # 13 Begin dan
Als HiWord (GetKeyState (VK_SHIFT)) <> 0 dan
SelectNext (afzender als TWinControl, False, True)
anders
SelectNext (afzender als TWinControl, True, True);
Sleutel: = # 0
einde;
einde;
~~~~~~~~~~~~~~~~~~~~~~~~~

~~~~~~~~~~~~~~~~~~~~~~~~~
procedure TForm1.DBGrid1KeyPress (Afzender: TObject; var Sleutel: Char);

instagram viewer

beginnen
If Key = # 13 Begin dan
Als HiWord (GetKeyState (VK_SHIFT)) <> 0, begin dan
met (Sender as TDBGrid) doen
indien geselecteerd index> 0 dan
selectedindex: = selectedindex - 1
anders begint
Databron. DataSet. Prior;
selectedindex: = fieldcount - 1;
einde;
anders begint
met (Sender as TDBGrid) doen
als selectedindex selectedindex: = selectedindex + 1
anders begint
Databron. DataSet. De volgende;
selectedindex: = 0;
einde;
einde;
Sleutel: = # 0
einde;
einde;
~~~~~~~~~~~~~~~~~~~~~~~~~

instagram story viewer