Hvordan implementere handlingslytter i Java



Denne artikkelen vil gi deg en detaljert og omfattende kunnskap om Action Listener i Java med eksempler for bedre forståelse.

Når en bruker utfører en bestemt handling må være i stand til å håndtere det effektivt. Handlingslyttere i Java kommer veldig godt med i slike situasjoner. I denne artikkelen vil vi diskutere følgende punkter:

Introduksjon til Action Listener

Som programmerer er det din plikt å definere hva en handlingslytter kan gjøre for brukerens drift. La oss for eksempel vurdere et enkelt scenario der brukeren velger et bestemt element fra menylinjen eller trykker på enter-tasten i et tekstfelt for å gå til en ny linje. Når slike brukerfunksjoner er utført, sendes en 'handling utført' -melding til alle respektive handlingslyttere definert i den aktuelle komponenten.





Nedenfor er det bildelig beskrevet hvordan du skriver en handlingslytter:

Action-Listener-List



Her er den avgjørende og integrerte delen et objekt som kan implementere Action Listener-grensesnittet. Dette objektet må identifiseres av programmet som en handlingslytter på knappen som ikke er annet enn hendelseskilden.

Ved å bruke addActionListener-metoden, når brukeren klikker på knappen, avfyres det således en handlingshendelse. Dette påkaller handlingen lytterens actionPerformed metode. Vær oppmerksom på at det er den eneste metoden i ActionListener-grensesnittet. Et enkelt argument til metoden er et ActionEvent-objekt, som gir informasjon om hendelsen og dens kilde

Action Event-klassen

Metoder Beskrivelse
String getActionCommand ()

Returnerer streng tilknyttet denne handlingen. De fleste objekter som kan utløse handlingshendelser støtter en metode kalt setActionCommand, som lar deg sette denne strengen.



int getModifiers ()

Den returnerer et heltall som brukeren trykket på under hendelsen under handling. Noen ActionEvent-definerte konstanter som SHIFT_MASK, CTRL_MASK, META_MASK og ALT_MASK brukes til å bestemme tastene du trykker på. For eksempel, hvis en bruker velger et menyelement, er uttrykket ikke null

Objekt getSource ()

(i java.util.EventObject)

Returnerer objektet som avfyrte hendelsen.

Implementering av Action Listener i Java

pakke 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 offentlig klasse ActionListenerTest implementerer ActionListener {JButton-knapp JFrame-ramme JTextArea textArea offentlig ActionListenerTest () {button = new JButton ('Click Me') frame = new JFrame ('ActionListener Test') textArea = new JTextArea (5, 40) button.addActionListener (this) textArea. setLineWrap (true) frame.setLayout (new 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 ('You have clicked the buttonn'))} public static void main (String args []) {ActionListenerTest test = new ActionListenerTest ()}}

I koden ovenfor kreves det at en handlingslytter implementeres i en klasse før du får tilgang til den. Så sørg for at du legger til implementeringsnøkkelordet og lytteren.

button.addActionListener (dette)

hva brukes mongodb til

Det betyr at komponentknappen blir inkludert i komponentene som blir sporet for en handlingshendelse. Det er obligatorisk å legge til en komponent i en handlingslytter, slik at du kan legge til koder når brukeren klikker på den aktuelle komponenten. Komponenter som ikke er lagt til med en handlingslytter, vil ikke bli overvåket.

La oss nå se på et annet enkelt eksempel på Action Listener i Java og hvordan det fungerer.

Eksempel 2:

Her er det 3 enkle Java-knappobjekter der de blir kalt rød, grønn og blå. Avhengig av knappen du klikker på, endres fargen på bakgrunnsskjermen.

Diagrammene nedenfor viser den respektive utgangen av koden som er plassert på slutten av dette dokumentet. Bare en forekomst av at skjermen ble blå har blitt vist. Andre farger som rødt og grønt kan sees ved å implementere denne koden.

Knappobjektet “rb” er knyttet til ActionListener. “Denne” parameteren representerer ActionListener. Hvis koblingen ikke er ferdig, vil programmet vise 3 knapper, men uten hendelsesbehandling.

getActionCommand () -metoden i ActionEvent-klassen kaster tilbake etiketten til den tilsvarende knappen som brukeren klikker på som en streng. str.

importere java.awt. * importere java.awt.event. * offentlig klasse ButtonDemo utvider Frame implementerer ActionListener {Button rb, gb, bb // de tre knappens referansevariabler public ButtonDemo () // konstruktør for å definere egenskapene til en knapp { FlowLayout fl = new FlowLayout () // set layout to frame setLayout (fl) rb = new Button ('Red') // convert variables into objects gb = new Button ('Green') bb = new Button ('Blue') rb.addActionListener (dette) // lenker Java-knapper med ActionListener gb.addActionListener (dette) bb.addActionListener (dette) legg til (rb) // legg til hver Java-knapp i rammen legg til (gb) legg til (bb) setTitle ('Button i handling ') setSize (300, 350) // rammedimensjoner, (bredde x høyde) setVisible (true) // definerende ramme som er synlig på skjermen, standard er setVisible (false)} // overstyr bare abstrakt metode for ActionListener-grensesnitt offentlig tom actionPerformed (ActionEvent e) {String str = e.getActionCommand () // for å identifisere knappen som ble klikket på System.out.println ('Du klikket' + str + 'knapp') // 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 () // anonymt objekt av ButtonDemo for å ringe konstruktøren}}

Med dette kommer vi til slutten av denne Action Listener i Java-artikkelen. Jeg håper du har forståelse for Action Listener i Java.

Sjekk ut av Edureka, et pålitelig online læringsfirma med et nettverk av mer enn 250 000 fornøyde elever spredt over hele verden. Edurekas Java J2EE- og SOA-opplæring og sertifiseringskurs er designet for studenter og fagpersoner som ønsker å være Java-utvikler. Kurset er designet for å gi deg et forsprang i Java-programmering og trene deg for både kjerne- og avanserte Java-konsepter sammen med forskjellige Java-rammer som Hibernate & Spring.

Har du et spørsmål til oss? Vennligst nevn det i kommentarfeltet i denne 'Action Listener in Java' -bloggen, så kommer vi tilbake til deg så snart som mulig.