Ako implementovať poslucháčov akcií v Jave



Tento článok vám poskytne podrobné a komplexné vedomosti o Action Listener v Jave s príkladmi pre lepšie pochopenie.

Keď používateľ vykoná určitú akciu musí byť v pozícii, aby to efektívne zvládla. V takýchto situáciách prídu poslucháči akcií v Jave veľmi vhod. V tomto článku sa budeme zaoberať nasledujúcimi bodmi:

Úvod do poslucháča akcií

Ako programátor je vašou povinnosťou definovať, čo môže poslucháč akcií urobiť pre činnosť používateľa. Uvažujme napríklad o jednoduchom scenári, keď používateľ vyberie určitú položku z panela s ponukami alebo stlačením klávesu Enter v textovom poli prejde na nový riadok. Akonáhle sú také užívateľské funkcie hotové, odošle sa správa „vykonaná akcia“ všetkým príslušným poslucháčom akcií definovaným v príslušnom komponente.





Nižšie je ilustrovaný postup, ako napísať poslucháča akcií:

Action-Listener-List



Tu je rozhodujúcou a integrálnou súčasťou objekt, ktorý dokáže implementovať rozhranie Action Listener. Tento objekt musí program identifikovať ako poslucháča akcie na tlačidle, ktoré nie je ničím iným ako zdrojom udalosti.

Ak teda používateľ klikne na tlačidlo, použije metódu addActionListener a vyvolá akciu. Toto vyvolá metódu actionPerformed poslucháča akcií. Upozorňujeme, že je to jediná metóda v rozhraní ActionListener. Jediným argumentom metódy je objekt ActionEvent, ktorý poskytuje informácie o udalosti a jej zdroji

Trieda udalosti akcie

Metódy Popis
Reťazec getActionCommand ()

Vráti reťazec spojený s touto akciou. Väčšina objektov, ktoré môžu spúšťať akčné udalosti, podporuje metódu nazvanú setActionCommand, ktorá umožňuje nastaviť tento reťazec.



int getModifiers ()

Vráti celé číslo, ktoré používateľ stláčal, keď bol aktívny počas udalosti. Na určenie stlačených klávesov sa používajú niektoré konštanty definované v ActionEvent ako SHIFT_MASK, CTRL_MASK, META_MASK a ALT_MASK. Ak napríklad používateľ vyberie položku ponuky, výraz je nenulový

Objekt getSource ()

(v java.util.EventObject)

Vráti objekt, ktorý spustil udalosť.

Implementácia poslucháča akcií v Jave

balík 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 verejná trieda ActionListenerTest implementuje ActionListener {JButton tlačidlo JFrame rámček 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 (nový BorderLayout ()) frame.add (textArea, BorderLayout.NORTH) frame.add (button, BorderLayout.SOUTH) frame.pack () frame.setDefaultCloseOperation (JFrame.EXIT_ON_CLOSE) frame.setVisible ( true)} @Override public void actionPerformed (ActionEvent e) {textArea.setText (textArea.getText (). concat ('Klikli ste na tlačidlo n'))} public static void main (String args []) {ActionListenerTest test = nový ActionListenerTest ()}}

Vo vyššie uvedenom kóde je potrebné, aby bol posluchač akcií implementovaný v triede, kým k nemu získate prístup. Nezabudnite teda pridať kľúčové slovo implements a poslucháča.

button.addActionListener (toto)

To znamená, že tlačidlo komponentu bude zahrnuté v komponentoch, ktoré sú sledované pre akčnú udalosť. Je potrebné pridať komponent do poslucháča akcií, aby ste mohli pridať kódy, keď používateľ klikne na konkrétny komponent. Súčasti, ktoré sa nepridajú s poslucháčom akcií, nebudú monitorované.

Teraz sa pozrime na ďalší jednoduchý príklad poslucháča akcií v Jave a na jeho fungovanie.

Príklad 2:

Tu sú 3 jednoduché objekty tlačidiel Java, ktoré sú pomenované ako červená, zelená a modrá. V závislosti na kliknutí na tlačidlo sa farba pozadia zmení.

Nasledujúce diagramy znázorňujú príslušný výstup kódu, ktorý je umiestnený na konci tohto dokumentu. Bola zobrazená iba jedna inštancia toho, že obrazovka zmodrela. Ostatné farby ako červená a zelená si môžete pozrieť implementáciou tohto kódu.

Tlačidlový objekt „rb“ je prepojený s ActionListenerom. Parameter „this“ predstavuje ActionListener. Ak sa prepojenie nevykoná, program zobrazí 3 tlačidlá, ale bez spracovania udalostí.

ako ukončiť v jave

Metóda getActionCommand () triedy ActionEvent vráti štítok príslušného tlačidla, na ktoré používateľ klikne, ako reťazec. str.

import java.awt. * import java.awt.event. * verejná trieda ButtonDemo rozširuje Frame implementuje ActionListener {Button rb, gb, bb // tri referenčné premenné tlačidla public public ButtonDemo () // konštruktor na definovanie vlastností tlačidla { FlowLayout fl = nový FlowLayout () // nastavenie rozloženia na rám setLayout (fl) rb = nové tlačidlo ('červené') // prevod premenných na objekty gb = nové tlačidlo ('zelené') bb = nové tlačidlo ('modré') rb.addActionListener (this) // prepojiť tlačidlá Java s ActionListener gb.addActionListener (this) bb.addActionListener (this) add (rb) // pridať každé tlačidlo Java do rámca add (gb) add (bb) setTitle ('Button v akcii ') setSize (300, 350) // rozmery rámu, (šírka x výška) setVisible (true) // definovanie rámca viditeľného na monitore, predvolená hodnota je setVisible (false)} // prepísať iba abstraktnú metódu rozhrania ActionListener public void actionPerformed (ActionEvent e) {String str = e.getActionCommand () // na identifikáciu kliknutého tlačidla System.out.println ('Klikli ste na' + str + 'tlačidlo') // 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 () // anonymný objekt ButtonDemo na volanie konštruktora}}

Týmto sa dostávame na koniec tohto článku Action Listener v článku Java. Dúfam, že ste porozumeli Action Listener v Jave.

Pozrite sa na autor: Edureka, dôveryhodná online vzdelávacia spoločnosť so sieťou viac ako 250 000 spokojných študentov rozmiestnených po celom svete. Výcvikový a certifikačný kurz Edureka Java J2EE a SOA sú určené pre študentov a profesionálov, ktorí chcú byť vývojármi Java. Kurz je navrhnutý tak, aby vám dal náskok v programovaní v Jave a naučil vás základné aj pokročilé koncepty Javy spolu s rôznymi rámcami Java, ako je Hibernate & Spring.

Máte na nás otázku? Uveďte to v sekcii komentárov v tomto blogu „Action Listener in Java“ a my sa vám ozveme čo najskôr.