A Java ActionListener értesítést kap, ha rákattint a gombra vagy a menüelemre. Az ActionEvent ellen értesítik. Az ActionListener felület a java.awt.event fájlban található csomag . Csak egy metódusa van: actionPerformed().
actionPerformed() metódus
Az actionPerformed() metódus automatikusan meghívódik, amikor a regisztrált összetevőre kattint.
public abstract void actionPerformed(ActionEvent e);
Hogyan írjunk ActionListenert
Az általános megközelítés az ActionListener megvalósítása. Ha megvalósítja az ActionListener osztályt, akkor 3 lépést kell követnie:
1) Valósítsa meg az ActionListener felületet az osztályban:
public class ActionListenerExample Implements ActionListener
2) Regisztrálja az összetevőt a Listenernél:
component.addActionListener(instanceOfListenerclass);
3) Az actionPerformed() metódus felülbírálása:
public void actionPerformed(ActionEvent e){ //Write the code here }
Java ActionListener Példa: Kattintson a gombra
import java.awt.*; import java.awt.event.*; //1st step public class ActionListenerExample implements ActionListener{ public static void main(String[] args) { Frame f=new Frame('ActionListener Example'); final TextField tf=new TextField(); tf.setBounds(50,50, 150,20); Button b=new Button('Click Here'); b.setBounds(50,100,60,30); //2nd step b.addActionListener(this); f.add(b);f.add(tf); f.setSize(400,400); f.setLayout(null); f.setVisible(true); } //3rd step public void actionPerformed(ActionEvent e){ tf.setText('Welcome to Javatpoint.'); } }
Kimenet:
Java ActionListener Példa: Anonymous osztály használata
Az ActionListener megvalósításához használhatjuk az anonim osztályt is. Ez a gyorsított módszer, így nem kell követnie a 3 lépést:
b.addActionListener(new ActionListener(){ public void actionPerformed(ActionEvent e){ tf.setText('Welcome to Javatpoint.'); } });
Nézzük meg az ActionListener teljes kódját anonim osztály használatával.
import java.awt.*; import java.awt.event.*; public class ActionListenerExample { public static void main(String[] args) { Frame f=new Frame('ActionListener Example'); final TextField tf=new TextField(); tf.setBounds(50,50, 150,20); Button b=new Button('Click Here'); b.setBounds(50,100,60,30); b.addActionListener(new ActionListener(){ public void actionPerformed(ActionEvent e){ tf.setText('Welcome to Javatpoint.'); } }); f.add(b);f.add(tf); f.setSize(400,400); f.setLayout(null); f.setVisible(true); } }
Kimenet: