Program menggunakan Bahasa Java dalam Netbeans

Kamis, 05 April 2018

Program Event Mouse Pada Frame dan Applet

April 05, 2018 Posted by Abdul Rohman No comments
Dibawah ini adalah sebuah program yang menangani event mouse pada jendela anak (frame) maupun jendela applet.

// Menangani event mouse pada jendela anak dan jendela applet.
import java.awt.*;
import java.awt.event.*;
import java.applet.*;
/*
<applet code="DemoEventMouseJendelaAppletDanFrame" width=300 height=50>
</applet>
*/

// Menciptakan sebuah subkelas dari Frame.
class FrameSederhana extends Frame
    implements MouseListener, MouseMotionListener {
   
    String psn = "";
    int mouseX=10, mouseY=40;
    int movX=0, movY=0;

    FrameSederhana(String judul) {
        super(judul);

        // meregister objek ini untuk menerima event mouse
        addMouseListener(this);
        addMouseMotionListener(this);

        // menciptakan sebuah objek untuk menangani event jendela
        AdapterJendelaKu adapter = new AdapterJendelaKu(this);
        // meregisternya untuk menerima event jendela
        addWindowListener(adapter);
    }

    // Menangani mouse ketika diklik.
    public void mouseClicked(MouseEvent me) {
    }

    // Menangani mouse ketika memasuki jendela.
    public void mouseEntered(MouseEvent evtObj) {
        // menyimpan koordinat
        mouseX = 10;
        mouseY = 54;
        psn = "Mouse memasuki jendela anak.";
        repaint();
    }
   
    // Menangani mouse ketika keluar jendela.
    public void mouseExited(MouseEvent evtObj) {
        // menyimpan koordinat
        mouseX = 10;
        mouseY = 54;
        psn = "Mouse keluar dari jendela anak.";
        repaint();
    }

    // Menangani mouse ketika ditekan.
    public void mousePressed(MouseEvent me) {
        // menyimpan koordinat
        mouseX = me.getX();
        mouseY = me.getY();
        psn = "Ditekan";
        repaint();
    }

    // Menangani mouse ketika tombolnya dilepaskan.
    public void mouseReleased(MouseEvent me) {
        // menyimpan koordinat
        mouseX = me.getX();
        mouseY = me.getY();
        psn = "Dilepas";
        repaint();
    }

    // Menangani ketika mouse digeret.
    public void mouseDragged(MouseEvent me) {
        // menyimpan koordinat
        mouseX = me.getX();
        mouseY = me.getY();
        movX = me.getX();
        movY = me.getY();
        psn = "*";
        repaint();
    }

    // Menangani mouse ketika berpindah.
    public void mouseMoved(MouseEvent me) {
        // menyimpan koordinat
        movX = me.getX();
        movY = me.getY();
        repaint(0, 0, 100, 60);
    }

    public void paint(Graphics g) {
        g.drawString(psn, mouseX, mouseY);
        g.drawString("Mouse pada " + movX + ", " + movY, 10, 40);
    }
}

class AdapterJendelaKu extends WindowAdapter {
    FrameSederhana frameSederhana;

    public AdapterJendelaKu(FrameSederhana frameSederhana) {
        this.frameSederhana = frameSederhana;
    }

    public void windowClosing(WindowEvent we) {
        frameSederhana.setVisible(false);
    }
}

// Jendela applet.
public class DemoEventMouseJendelaAppletDanFrame extends Applet
    implements MouseListener, MouseMotionListener {

    FrameSederhana f;
    String psn = "";
    int mouseX=0, mouseY=10;
    int movX=0, movY=0;

    // Menciptakan sebuah jendela frame.
    public void init() {
        f = new FrameSederhana("Menangani Event Mouse");
        f.setSize(300, 200);
        f.setVisible(true);

        // meregister objek ini ketika menerima event mouse
        addMouseListener(this);
        addMouseMotionListener(this);
    }

    // Menghapus jendela frame ketika applet berhenti.
    public void stop() {
        f.setVisible(false);
    }

    // Menampilkan jendela frame ketika applet dimulai.
    public void start() {
        f.setVisible(true);
    }

    // Menangani ketika mouse diklik.
    public void mouseClicked(MouseEvent me) {
    }

    // Menangani mouse ketika memasuki jendela.
    public void mouseEntered(MouseEvent me) {
        // menyimpan koordinat
        mouseX = 0;
        mouseY = 24;
        psn = "Mouse memasuki jendela applet.";
        repaint();
    }

    // Menangani mouse ketika keluar jendela applet.
    public void mouseExited(MouseEvent me) {
        // menyimpan koordinat
        mouseX = 0;
        mouseY = 24;
        psn = "Mouse keluar jendela applet.";
        repaint();
    }

    // Menangani ketika tombol mouse ditekan.
    public void mousePressed(MouseEvent me) {
        // menyimpan koordinat
        mouseX = me.getX();
        mouseY = me.getY();
        psn = "Ditekan";
        repaint();
    }

    // Menangani ketika tombol mouse dilepaskan.
    public void mouseReleased(MouseEvent me) {
        // menyimpan koordinat
        mouseX = me.getX();
        mouseY = me.getY();
        psn = "Delepaskan";
        repaint();
    }

    // Menangani ketika mouse digeret.
    public void mouseDragged(MouseEvent me) {
        // menyimpan koordinat
        mouseX = me.getX();
        mouseY = me.getY();
        movX = me.getX();
        movY = me.getY();
        psn = "*";
        repaint();
    }

    // Menangani ketika mouse berpindah.
    public void mouseMoved(MouseEvent me) {
        // menyimpan koordinat
        movX = me.getX();
        movY = me.getY();
        repaint(0, 0, 100, 20);
    }

    // Menampilkan psn pada jendela applet.
    public void paint(Graphics g) {
        g.drawString(psn, mouseX, mouseY);
        g.drawString("Mouse pada " + movX + ", " + movY, 0, 10);
    }
}

Hasilnya:

0 komentar:

Posting Komentar

close
==[ Klik disini 1X ] [ Close ]==