Saturday, May 31, 2025

[JAVA] FILL COLOUR from MOUSE

import javax.swing.*;
import java.awt.*;
import java.awt.event.*;

public class ColorFromMouse extends JPanel {

    private Color selectedColor = Color.BLACK;
    private int regionWidth = 50; // Example region width

    public ColorFromMouse() {
        addMouseListener(new MouseAdapter() {
            @Override
            public void mouseClicked(MouseEvent e) {
                int x = e.getX();
                int region = x / regionWidth;

                // Example mapping of regions to colors
                switch (region) {
                    case 0: selectedColor = Color.RED; break;
                    case 1: selectedColor = Color.GREEN; break;
                    case 2: selectedColor = Color.BLUE; break;
                    default: selectedColor = Color.BLACK;
                }
                repaint(); // Trigger redraw with the new color
            }
        });
    }

    @Override
    protected void paintComponent(Graphics g) {
        super.paintComponent(g);
        g.setColor(selectedColor);
        g.fillRect(50, 50, 100, 100); // Example filled rectangle
    }

    public static void main(String[] args) {
        JFrame frame = new JFrame("Color From Mouse");
        frame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
        frame.add(new ColorFromMouse());
        frame.setSize(300, 300);
        frame.setVisible(true);
    }
}

No comments: