Poslucháči udalostí Java spracúvajú aktivitu používateľa v GUI

click fraud protection

Poslucháč udalostí v Jáva je navrhnutý tak, aby spracoval nejakú udalosť - „počúva“ udalosť, napríklad kliknutie myšou používateľa alebo stlačenie klávesu, a potom zodpovedajúcim spôsobom reaguje. Poslucháč udalostí musí byť pripojený k objektu udalosti, ktorý definuje udalosť.

Napríklad grafické komponenty ako a JButton alebo JTextField sú známe ako zdroje udalostí. To znamená, že môžu generovať udalosti (nazývané objekty udalostí), napríklad poskytnutie a JButton pre používateľa na kliknutie alebo JTextField do ktorého môže užívateľ zadávať text. Úlohou poslucháča udalostí je zachytiť tieto udalosti a urobiť s nimi niečo.

Ako fungujú poslucháči udalostí

Každé rozhranie poslucháča udalostí obsahuje najmenej jednu metódu použitú ekvivalentným zdrojom udalosti.

Pri tejto diskusii zvážme udalosť myši, t. J. Kedykoľvek používateľ klikne myšou, ktorú predstavuje trieda Java MouseEvent. Aby ste zvládli tento typ udalosti, mali by ste najprv vytvoriť MouseListener trieda, ktorá implementuje Java

instagram viewer
MouseListener rozhranie. Toto rozhranie má päť metód; implementujte ten, ktorý sa týka typu akcie myši, ktorú očakávate od svojho používateľa. Sú to tieto:

  • void mouseClicked (MouseEvent e)

    Vyvolá sa po kliknutí (stlačení a uvoľnení) tlačidla myši na komponent.
  • void mouseEntered (MouseEvent e)

    Vyvolá sa, keď myš vstúpi do komponentu.
  • void mouseExited (MouseEvent e)

    Vyvolá sa, keď myš opustí komponent.
  • prázdna myšPressed (MouseEvent e)

    Vyvolá sa po stlačení tlačidla myši na komponente.
  • void mouseReleased (MouseEvent e)

    Vyvolá sa po uvoľnení tlačidla myši na komponente

Ako vidíte, každá metóda má jeden parameter objektu udalosti: konkrétna udalosť myši, s ktorou sa má manipulovať. Vo vašom MouseListener trieda, vy Registrovať „počúvať“ ktorúkoľvek z týchto udalostí, aby ste boli informovaní o ich výskyte.

Keď sa udalosť spustí (napríklad, používateľ klikne myšou, podľa tabuľky) mouseClicked () metóda vyššie), relevantné MouseEvent objekt predstavujúci danú udalosť je vytvorený a odovzdaný do MouseListener predmet zaregistrovaný na jeho prijatie.

Typy poslucháčov udalostí

Poslucháči udalostí sú zastúpení rôznymi rozhraniami, z ktorých každé je navrhnuté na spracovanie ekvivalentnej udalosti.

Upozorňujeme, že poslucháči udalostí sú flexibilní v tom, že jedného poslucháča možno zaregistrovať na „počúvanie“ viacerých typov udalostí. To znamená, že pre podobný súbor komponentov, ktoré vykonávajú rovnaký typ akcie, jeden poslucháč udalostí zvládne všetky udalosti.

Tu sú niektoré z najbežnejších typov:

  • ActionListener: Počúva an ActionEvent, t. j. po kliknutí na grafický prvok, napríklad na tlačidlo alebo položku v zozname.
  • ContainerListener: Počúva a ContainerEvent, ktoré sa môžu vyskytnúť, keď používateľ pridá alebo odstráni objekt z rozhrania.
  • KeyListener: Počúva a KeyEvent v ktorej používateľ stlačí, napíše alebo uvoľní kľúč.
  • WindowListener: Počúva a WindowEventnapríklad keď je okno zatvorené, aktivované alebo deaktivované.
  • MouseListener: Počúva a MouseEvent, napríklad po kliknutí alebo stlačení myši.
instagram story viewer