Hogyan lehet megvalósítani az Action Listener programot a Java-ban



Ez a cikk részletes és átfogó ismereteket nyújt a Java Action Listenerről, példákkal a jobb megértés érdekében.

Amikor a felhasználó végrehajt egy bizonyos műveletet olyan helyzetben kell lennie, hogy hatékonyan kezelje. A java akcióhallgatók nagyon jól jönnek ilyen helyzetekben. Ebben a cikkben a következő pontokat fogjuk megvitatni:

Bevezetés az akciófigyelőbe

Programozóként kötelessége meghatározni, hogy egy akciófigyelő mit tehet a felhasználó működéséért. Vegyünk például egy egyszerű forgatókönyvet, amikor a felhasználó kiválaszt egy bizonyos elemet a menüsorból, vagy egy Enter mezőbe kattint egy szövegmezőben, hogy új sorra lépjen. Az ilyen felhasználói funkciók elvégzése után egy „végrehajtott művelet” üzenetet küld az összes releváns komponensben definiált megfelelő művelethallgatónak.





Az alábbiakban képszerűen leírjuk, hogyan kell írni egy művelethallgatót:

Action-Listener-List



Itt a döntő és szerves része egy olyan objektum, amely képes megvalósítani az Action Listener felületet. Ezt az objektumot a programnak műveletfigyelőként kell azonosítania a gombon, amely nem más, mint az esemény forrása.

Így az addActionListener metódus használatával, amikor a felhasználó rákattint a gombra, egy cselekvési eseményt indít. Ez az akcióhallgató actionPerformed metódusát hívja meg. Felhívjuk figyelmét, hogy ez az egyetlen módszer az ActionListener felületen. A metódus egyetlen argumentuma egy ActionEvent objektum, amely információt szolgáltat az eseményről és annak forrásáról

Az Action Event osztály

Mód Leírás
Karakterlánc getActionCommand ()

Az ehhez a művelethez tartozó karakterláncot adja eredményül. A legtöbb objektum, amely képes cselekvési eseményeket indítani, támogatja a setActionCommand nevű metódust, amely lehetővé teszi ennek a karakterláncnak a beállítását.



int getModifiers ()

Visszaad egy egész számot, amelyet a felhasználó a művelet során megnyomott. Néhány ActionEvent által definiált konstans, például SHIFT_MASK, CTRL_MASK, META_MASK és ALT_MASK használatos a megnyomott billentyűk meghatározására. Például, ha a felhasználó kiválaszt egy menüpontot, akkor a kifejezés nem nulla

Objektum getSource ()

(a java.util.EventObject fájlban)

Visszaadja az eseményt kiváltó objektumot.

Action Listener megvalósítása Java-ban

com.javapointers.javase import java.awt.BorderLayout import java.awt.event.ActionEvent import java.awt.event.ActionListener import javax.swing.JButton import javax.swing.JFrame import javax.swing.JTextArea public class ActionListenerTest implements ActionListener {JButton gomb JFrame frame JTextArea textArea public ActionListenerTest () {button = new JButton ('Click Me') frame = new JFrame ('ActionListener Test') textArea = new JTextArea (5, 40) button.addActionListener (this) textArea. setLineWrap (true) frame.setLayout (új BorderLayout ()) frame.add (textArea, BorderLayout.NORTH) frame.add (gomb, BorderLayout.SOUTH) frame.pack () frame.setDefaultCloseOperation (JFrame.EXIT_ON_CLOSE) frame.set true)} @Override public void actionPerformed (ActionEvent e) {textArea.setText (textArea.getText (). concat ('A gombra kattintott'))} public static void main (String args []) {ActionListenerTest test = new ActionListenerTest ()}}

A fenti kódban egy műveletfigyelőt be kell vezetni egy osztályba, mielőtt hozzáférhetne hozzá. Tehát feltétlenül adja hozzá az implements kulcsszót és a hallgatót.

button.addActionListener (ez)

Ez azt jelenti, hogy a komponens gomb bekerül azokba az összetevőkbe, amelyeket egy akcióesemény nyomon követ. Kötelező hozzáadni egy összetevőt egy műveletfigyelőhöz, hogy kódokat adhasson hozzá, amikor a felhasználó rákattint az adott összetevőre. Azokat a komponenseket, amelyeket nem ad hozzá egy művelethallgatóhoz, nem lehet figyelni.

Most nézzünk meg egy másik egyszerű példát a Java Action Listener-re és annak működésére.

2. példa:

Itt van 3 egyszerű Java gomb objektum, ahol piros, zöld és kék nevet kapnak. A gombra kattintva a háttér színének megváltozása.

Az alábbi ábrák a kód megfelelő kimenetét mutatják be, amely a dokumentum végén található. A képernyőnek csak egy példánya vált kékessé. Más színek, mint például a piros és a zöld, megtekinthetők ennek a kódnak a megvalósításával.

Az „rb” gombobjektum össze van kapcsolva az ActionListener programmal. Az „this” paraméter az ActionListener-et jelöli. Ha a linkelés nem történik meg, a program 3 gombot jelenít meg, de eseménykezelés nélkül.

Az ActionEvent osztály getActionCommand () metódusa visszadobja a megfelelő gomb címkéjét, amelyre a felhasználó karakterláncként kattintott. str.

import java.awt. * import java.awt.event. * public class ButtonDemo kiterjeszti a Frame megvalósítja az ActionListener {Button rb, gb, bb // a három Button referencia változó public ButtonDemo () // konstruktor a gomb tulajdonságainak meghatározásához { FlowLayout fl = new FlowLayout () // set layout to frame setLayout (fl) rb = new Button ('Red') // // változók alakítása objektummá gb = new Button ('Green') bb = new Button ('Blue') rb.addActionListener (this) // Java gombok összekapcsolása az ActionListener alkalmazással gb.addActionListener (this) bb.addActionListener (this) add (rb) // minden Java gomb hozzáadása a kerethez add (gb) add (bb) setTitle ('gomb in Action ') setSize (300, 350) // keretméretek, (szélesség x magasság) setVisible (true) // a képernyőn látható keret meghatározása, az alapértelmezett beállítás setVisible (hamis)} // az ActionListener felületének csak elvont módszerét írja felül actionPerformed (ActionEvent e) {String str = e.getActionCommand () // a gombra kattintva, amelyre rákattint, kattintson a System.out.println ('Kattintson a' + str + 'gombra') // if (str.equals ('Red')) {setBackground (Color.red)} else if (str.equals ('Green')) {setBackground (Color.green)} else if (str.equals ('Blue') ) {setBackground (Color.blue)}} public static void main (String args []) {new ButtonDemo () // a ButtonDemo névtelen objektuma, hogy felhívja a konstruktort}}

Ezzel a Java-cikkben az Action Listener végére értünk. Remélem, megértette az Action Listener programot a Java-ban.

program befejezése java-ban

Nézze meg a az Edureka, egy megbízható online tanulási vállalat, amelynek több mint 250 000 elégedett tanulóval rendelkező hálózata elterjedt az egész világon. Az Edureka Java J2EE és SOA képzését és tanúsító tanfolyamát olyan hallgatók és szakemberek számára tervezték, akik Java fejlesztők szeretnének lenni. A tanfolyamot úgy tervezték meg, hogy előrelépést nyújtson a Java programozásban, és képezze mind az alapvető, mind a fejlett Java koncepciókhoz, valamint a különböző Java keretrendszerekhez, például a Hibernate & Spring.

Van egy kérdésünk? Kérjük, említse meg a „Action Listener in Java” blog megjegyzés rovatában, és a lehető leghamarabb kapcsolatba lépünk Önnel.