Program Java menangani MouseEvent mouseClicked
Penanganan MouseEvent mouseClicked Di Program Java

Di artikel Penanganan MouseEvent (mouseEntered Dan mouseExited), Anda dapat mempelajari cara menangani event Java yang dipicu oleh mouse. Adapun mouse yang diberi penangan event (handler) adalah ketika mouse memasuki jendela aplikasi (mouseEntered) dan ketika mouse keluar dari jendela aplikasi (mouseExited).

Di artikel Kelas Adapter, Anda juga dapat mempelajari kelas adapter dan fungsinya di penanganan event (aksi) Java. Kedua artikel tersebut mempunyai kaitan erat untuk contoh program kali ini yang masih mengenai penanganan event yang dipicu mouse yaitu aksi klik mouse. Contoh program penanganan event klik mouse ini hanya menggunakan metoda mouseKlicked dari interface MouseListener dan mengabaikan metoda lainnya.

Pogram penangan event metoda mouseClicked adalah menampilkan titik koordinat ketika sebuah mouse diklik di area jendela aplikasi. Karena interface MouseListener mempunyai beberapa metoda dan hanya metoda mouseClicked yang diberi penangan event, program memanfaatkan MouseAdapter untuk menghindari deklarasi ulang metoda lainnya yang tidak digunakan.

Berikut ini adalah kode program untuk penanganan event Java yang dipicu ketika sebuah mouse diklik di area jendela aplikasi (frame).

 1
 2
 3
 4
 5
 6
 7
 8
 9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
// Nama file : MouseClicked.java
// Menampilkan koordinat saat mouse diklik

// Mengimpor kelas
import java.awt.*;
import java.awt.event.*;
import javax.swing.*;

// Deklarasi kelas
public class MouseClicked extends JFrame {
  
   private int koX, koY;
   private Font font;

   // Konstruktor kelas MouseClicked
   public MouseClicked() {

      setTitle("Kelas MouseClicked");
      addMouseListener(new PenanganMouse());
      setSize(280, 130);
      setVisible(true);
   }

   // Deklarasi inner class PenanganMouse
   class PenanganMouse extends MouseAdapter {

      public void mouseClicked(MouseEvent e) {

         koX = e.getX();
         koY = e.getY();
         repaint();
      }
   }

   // Metoda paint untuk menggambar string
   public void paint(Graphics g) {
   
      super.paint(g);

      font = new Font("Tahoma", Font.BOLD, 14);
      g.setFont(font);
      g.setColor(Color.RED);
      g.drawString("[" + koX + ", " + koY + "]", koX, koY);
   }

   // Metoda main
   public static void main(String[] args) {
      MouseClicked frame = new MouseClicked();
      frame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
   }
}

Baris nomor 25 - 33 adalah deklarasi inner class PenanganMouse sebagai obyek pendengar. Inner class PenanganMouse tidak mengimplementasikan interface MouseListener, tetapi turunan langsung dari kelas MouseAdapter (kata kunci extends).

Bila Anda mendeklarasikan PenanganMouse sebagai obyek pendengar dan mengimplementasikan interface MouseListener, inner class PenanganMouse harus mendeklarasikan ulang semua metoda interface MouseListener seperti mouseEntered, mouseExited, mouseClicked, mousePressed dan mouseReleased.

Di dalam blok metoda mouseClicked, baris nomor 29 dan 30 adalah pernyataan untuk mendapatkan koordinat ketika mouse diklik di area frame. Baris nomor 31 adalah pernyataan untuk memanggil metoda paint (baris nomor 36 – 44) dan mengeksekusi pernyataan di blok metoda tersebut.

Di dalam metoda paint, pernyataan baris nomor 41 dan 42 mengatur terlebih dahulu variabel acuan g yang mengacu ke obyek kelas Graphics agar proses menggambar string dengan font dan warna yang telah ditentukan. Baris nomor 43 adalah pernyataan untuk menggambar literal string yang merupakan representasi nilai koordinat yang ditentukan oleh variabel koX dan koY.

Penanganan MouseEvent di bahasa pemrograman Java

Produk Populer

Murah Taffware OKD180 power supply station 220V 69800mAh
Taffware OKD180 Power Supply Station Generator 220V 69800mAh
Rp 1.045.500
(4.8/5)
Murah Fosi Audio DA2120C Power Amplifier
Fosi Audio DA-2120C Bluetooth 5.0 Amplifier 2.1 Channel with Remote
Rp 2.138.900
(5/5)
Murah Fosi Audio BT30D Pro Power Amplifier
Fosi Audio BT30D PRO Bluetooth 5.0 Amplifier 2.1 Channel 165x2+350W
Rp 1.298.600
(5/5)
Murah Taffware OKD320A Power Supply Station 84000mAh 300W
TAFFWARE OKD320A Power Supply Station Generator Portable 84000mAh 300W
Rp 1.543.500
(4.8/5)

Dapatkan DISKON dan GRATIS ONGKIR untuk pembelian melalui aplikasi Tokopedia.