A Java eseményhallgatók feldolgozzák a felhasználói tevékenységet egy felhasználói felületen

Egy eseményfigyelő Jáva valamilyen esemény feldolgozására szolgál - „meghallgatja” egy eseményt, például a felhasználó egérkattintását vagy egy gombnyomását, majd ennek megfelelően reagál. Az eseményfigyelőt csatlakoztatni kell az eseményt meghatározó eseményobjektumhoz.

Például a grafikus komponensek, például a JButton vagy JTextField nevezik eseményforrások. Ez azt jelenti, hogy eseményeket generálhatnak (úgynevezett eseményobjektumok), például a JButton hogy a felhasználó kattinthasson, vagy a JTextField amelybe a felhasználó beírhat szöveget. Az eseményhallgató feladata az események elkapása, és velük valami tennivaló.

Hogyan működnek az eseményhallgatók?

Minden eseményfigyelő felület legalább egy módszert tartalmaz, amelyet az egyenértékű eseményforrás használ.

Ebben a beszélgetésben vegyünk egy egér eseményt, azaz bármikor, amikor a felhasználó valamelyik egérrel kattint, a Java osztály képviseli MouseEvent. Az ilyen típusú események kezeléséhez először létre kell hoznia egy a MouseListener

instagram viewer
osztály, amely megvalósítja a Java-t MouseListener felület. Ennek a felületnek öt módja van; hajtsa végre azt, amely az egérművelet típusához kapcsolódik, amelyet a felhasználó elvár. Ezek:

  • érvénytelen egérkattintás (MouseEvent e)

    Meghívás, ha az egérgombra kattintottak (megnyomták és elengedték) egy komponensre.
  • void mouseEntered (MouseEvent e)

    Meghívás, amikor az egér beír egy komponenst.
  • void mouseExited (MouseEvent e)

    Meghívás, amikor az egér kilép az összetevőből.
  • void mousePressed (MouseEvent e)

    Meghívás, ha egy alkatrészre egérgombot nyomtak meg.
  • void mouseReleased (MouseEvent e)

    Ha az egérgombot elengedték az alkatrészen, akkor hívják be

Mint láthatja, minden módszer egyetlen eseményobjektum-paraméterrel rendelkezik: az az egér-esemény, amelyet kezelésére terveztek. A te MouseListener osztály, te Regisztráció "hallgatni" az események bármelyikét, hogy tájékoztassák Önt azok bekövetkezéséről.

Amikor az esemény elindul (például a felhasználó az egérre kattint, az egy szerint) mouseClicked () fenti módszer), releváns MouseEvent az eseményt ábrázoló objektum létrehozása és továbbítása az MouseListener objektum regisztrált, hogy megkapja.

Eseményhallgatók típusai

Az események hallgatóit különböző interfészek képviselik, amelyek mindegyike egyenértékű esemény feldolgozására szolgál.

Vegye figyelembe, hogy az eseményhallgatók rugalmasak abban a tekintetben, hogy egyetlen hallgató regisztrálható többféle esemény meghallgatására. Ez azt jelenti, hogy az azonos típusú műveletet végrehajtó hasonló összetevők halmazánál egy eseményfigyelő kezelheti az összes eseményt.

Íme néhány a leggyakoribb típusok:

  • ActionListener: Hallgat ActionEventvagyis amikor egy grafikus elemre kattintanak, például egy gombra vagy egy elemre a listában.
  • ContainerListener: Figyeli a ContainerEvent, amely akkor fordulhat elő, ha a felhasználó hozzáad egy objektumot vagy eltávolítja azt a felületről.
  • KeyListener: Figyeli a KeyEvent amelyben a felhasználó megnyom, beír vagy elenged egy gombot.
  • WindowListener: Figyeli a WindowEventpéldául egy ablak bezárása, aktiválása vagy deaktiválása esetén.
  • MouseListener: Figyeli a MouseEvent, például amikor egérre kattintanak vagy megnyomják.
instagram story viewer