Sabtu, 03 Desember 2011

Event listener (action listener, mouse listener, mouse motion listener)

Event Listener merupakan interface yang akan meng-handle event yang terjadi. setiap type event mempunyai interface yang bersesuaian. Listener tersebut harus diimplementasikan oleh class yang akan meng-handle event
 
Action Listener : Terjadi ketika komponen seperti tombol diklik atau ditekan dengan tombol enter .

CONTOH ActionListener:
  
  button.addActionListener(new ActionListener() {

            @Override
            public void actionPerformed(ActionEvent arg0) {
                if (field.getText().equals("")) {
                    System.out.println("tidak ada text yang ditulis!!");
                    JOptionPane.showMessageDialog(frame, label,
                            "judul pesannya", 1);
                } else {
                    JFrame frame2 = new JFrame("frame hasil");
                    frame2.setSize(600, 400);
                    frame2.setLocationRelativeTo(frame);
                    final JTextPane textPane = new JTextPane();
                    final JScrollPane ScrollPane = new JScrollPane(textPane);

                    panggilKoneksi(field, textPane);

                    frame2.add(ScrollPane);
                    frame2.setVisible(true);
                }
            }

            private void panggilKoneksi(final JTextField field,
                    final JTextPane textPane) {
                try {
                    URL url = new URL(field.getText());
                    URLConnection con = url.openConnection();
                    InputStream is = con.getInputStream();
                    ByteArrayOutputStream os = new ByteArrayOutputStream();

                    byte[] b = new byte[10];
                    int len;
                    while ((len = is.read(b, 0, b.length)) != -1) {
                        os.write(b, 0, len);
                    }

                    textPane.setText(new String(os.toByteArray()));

                    os.close();
                    is.close();

                } catch (MalformedURLException e) {
                    JLabel label2 = new JLabel("salah tulis di URL");
                    JOptionPane.showMessageDialog(frame, label2,
                            "kesalahan tulis", 1);
                } catch (IOException e) {
                    JLabel label3 = new JLabel("salah tulis di URL ini");
                    JOptionPane.showMessageDialog(frame, label3,
                            "kesalahan tulisan", 0);

                }

            }
        });
Mouse Listener : Mendeteksi tombol mouse yang digunakan.
 
  • void mouseClicked (MouseEvent e) Mouse di-click atau ditekan tombolnya kemudian langsungdilepaskan.
  • void mouseEntered (MouseEvent e) Ketika mouse memasuki komponen.
  • void mouseExited(MouseEvent e) Ketika mouse keluar dari komponen.
  • void mousePressed (MouseEvent e) Tombol mouse ditekan.
  • void mouseReleased(MouseEvent e) Tombol mouse dilepaskan
. 
Mouse Motion Listener : Terjadi ketika user mengirim perintah dengan mouse saat mendrag atau move



CONTOH MouseEventsDemo :

package mouseeventsdemo;
import java.awt.*;
import java.awt.event.*;
/**
*
* @author Ren
*/
public class MouseEventsDemo extends Frame implements MouseListener, MouseMotionListener {  // Langkah 1
TextField tf;
public MouseEventsDemo( String title){
super(title);
tf = new TextField(60);
addMouseListener(this); // Langkah 2
}
public void launchFrame() {
/* Menambah komponen pada frame */
add(tf, BorderLayout.SOUTH);
setSize(300,300);
setVisible(true);
}
public void mouseClicked(MouseEvent me) { // Langkah 3
String msg = “Mouse clicked.”;
tf.setText(msg);
}
public void mouseEntered(MouseEvent me) {
String msg = “Mouse entered component.”;
tf.setText(msg);
}
public void mouseExited(MouseEvent me) {
String msg = “Mouse exited component.”;
tf.setText(msg);
}
public void mousePressed(MouseEvent me) {
String msg = “Mouse pressed.”;
tf.setText(msg);
}
public void mouseReleased(MouseEvent me) {
String msg = “Mouse released.”;
tf.setText(msg);
}
public void mouseDragged(MouseEvent me) {
String msg = “Mouse dragged at ” + me.getX()
+ “,” + me.getY();
tf.setText(msg);
}
public void mouseMoved(MouseEvent me) {
String msg = “Mouse moved at ” + me.getX()
+ “,” + me.getY();
tf.setText(msg);
}
}
main.java
package mouseeventsdemo;
/**
*
* @author Ren
*/
public class Main {
/**
* @param args the command line arguments
*/
public static void main(String[] args) {
// TODO code application logic here
MouseEventsDemo med = new MouseEventsDemo(“Mouse Events Demo”);
med.launchFrame();
}
}


Tidak ada komentar:

Posting Komentar