Java.GUI : Melacak Jejak dan Aktivitas Mouse di Layar

Last Updated on 13 years by Hafizh Herdi

Belakangan ini kuliah libur, sehingga banyak waktu senggang. Waktu luang tersebut saya gunakan untuk memodifikasi dan menyalin ulang kode untuk melacak/tracking jejak dan aktivitas(event) mouse Anda pada Layar. Sekalian belajar GUI. Saya ingin bisa GUI, kenapa? Karena saya tertarik dengan desain.
Oke, inilah kodenya, terbagi dalam dua kelas :

  • class MouseTrackerFrame.java
    import java.awt.Color;
    import java.awt.BorderLayout;
    import java.awt.event.MouseListener;
    import java.awt.event.MouseMotionListener;
    import java.awt.event.MouseEvent;
    import javax.swing.JFrame;
    import javax.swing.JLabel;
    import javax.swing.JPanel;
    
    public class MouseTrackerFrame extends JFrame
    {
        private JPanel mousePanel;
        private JLabel statusBar;
    
        public MouseTrackerFrame()
        {
        super("Demonstrasi Mouse Event");
        mousePanel = new JPanel();
        mousePanel.setBackground(Color.WHITE);
        add(mousePanel, BorderLayout.CENTER);
    
        statusBar = new JLabel("Mouse Di luar JPanel");
        add(statusBar, BorderLayout.SOUTH);
    
        //create and register listener for mouse and mouse motion events
        MouseHandler handler = new MouseHandler();
        mousePanel.addMouseListener(handler);
        mousePanel.addMouseMotionListener(handler);
        }
        private class MouseHandler implements MouseListener, MouseMotionListener
        {
        public void mouseClicked(MouseEvent event)
        {
            statusBar.setText(String.format("Diklik di [%d, %d]",
                            event.getX(), event.getY()));
        }
    
        public void mousePressed(MouseEvent event)
        {
            statusBar.setText(String.format("Ditekan di [%d, %d]",
                            event.getX(), event.getY()));
        }
    
        public void mouseReleased(MouseEvent event)
        {
            statusBar.setText(String.format("Dilepas di [%d,%d]",
                            event.getX(), event.getY()));
        }
        public void mouseEntered(MouseEvent event)
        {
            statusBar.setText(String.format("Mouse masuk di[%d,%d]",
                            event.getX(),event.getY()));
            mousePanel.setBackground(Color.GREEN);
        }
        public void mouseExited(MouseEvent event)
        {
            statusBar.setText("Mouse di luar JPanel");
            mousePanel.setBackground(Color.WHITE);
        }
    
        public void mouseDragged(MouseEvent event)
        {
            statusBar.setText(String.format("Diseret Like Hell di [%d, %d]",
                            event.getX(), event.getY()));
        }
        public void mouseMoved(MouseEvent event)
        {
            statusBar.setText(String.format("Digerakkan di [%d, %d]",
                            event.getX(), event.getY()));
        }
        }
    }
    
  • class MouseTracker.java
    import javax.swing.JFrame;
    
    public class MouseTracker
    {
        public static void main(String args[])
        {
        MouseTrackerFrame mouseTrackerFrame = new MouseTrackerFrame();
        mouseTrackerFrame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
        mouseTrackerFrame.setSize(300,100);
        mouseTrackerFrame.setVisible(true);
        }
    }
    

SCREENSHOTS













Download aplikasi kami di Google Play Store


Tutorial Menarik Lainnya :

Leave a Reply

Your email address will not be published. Required fields are marked *

TWOH&Co.