Kako ujeti pritiske na tipke v Javi

Avtor: Morris Wright
Datum Ustvarjanja: 26 April 2021
Datum Posodobitve: 1 December 2024
Anonim
Kako ujeti pritiske na tipke v Javi - Članki
Kako ujeti pritiske na tipke v Javi - Članki

Vsebina

Zajemanje tipk v Javi ni isto kot sprejemanje tipkovnice. V večini primerov program sprejema uporabniški vnos s tipkovnice v obliki natisljivih znakov. Črke, številke in simbole se berejo in shranjujejo, odmevajo nazaj na zaslon ali pa se uporabijo za sprožitev nekaterih drugih ukrepov znotraj programa. Pri zajemanju pritiska ne-natisnjenega ključa, smernih puščic in tipke Tab, mora biti vnos interpretiran s programom in posredovan ustrezni vhodno / izhodni knjižnici, da se lahko obdeluje.


Navodila

Zajemite in obdelajte znake, ki jih ni mogoče natisniti, v Javi (Creatas Images / Creatas / Getty Images)
  1. Ustvarite funkcijo za zaznavanje pritiska na tipko in dodelite spremenljivko, ki bo sledila dogodku:

    javni boolean keyDown (dogodek e, int ključ) {

    Boolean spremenljivka vrne samo resnično ali napačno vrednost. Privzeto stanje te vrste spremenljivke je false. Če pritisnete tipko, se vrednost spremeni v true. Ta funkcija vrne tudi ekvivalent ASCII in ga shrani v "ključ" spremenljivke celih števil.

  2. Ugotovite, ali je tipka, ki ste jo pritisnili, natisljiv znak:

    če (tipka> 31 & & key <127) {

    Znaki ASCII, ki jih je mogoče natisniti, imajo vrednosti med 31 in 127. Vse ostale zahtevajo posebno ravnanje.

  3. Če je znak za tiskanje, posredujte vrednost ključu programu:


    vrne validateText (ključ); }

  4. Obvestite kličoči program, da ključa ni mogoče natisniti in potrebuje posebno obdelavo, če je izven določenih vrednosti ASCII:

    return false; }

Kako

  • Ko se napačna vrednost vrne klicnemu programu, funkcija keyDown () prenese vrednost ključa na funkcijo superklasa, ki jo vsebuje knjižnica razredov orodij za abstraktno okno Java (AWT), ki je odgovorna za upodabljanje ne-natisnjenih ključev.
  • Celoten segment kode:
  • javni boolean keyDown (dogodek e, int ključ) {
  • če (tipka> 31 & & key <127) {
  • vrne validateText (ključ).
  • }
  • return false;
  • }