UFO

Progetto Eclipse: UFO.zip

Creare un semplice programma con pannello JPrato (verde) che possa contenere vari oggetti JFiore (tipo margherita). Le margherite vengono inserite con il click del mouse. In JPrato deve esserci una JLabel in alto a sinistra che tenga il conteggio delle margherite presenti. Cliccando con il mouse su una margherita deve diventare invisibile.

JCanvas

import java.awt.Dimension;
import java.awt.Graphics;
import java.awt.event.MouseEvent;
import java.awt.event.MouseListener;
import java.awt.event.MouseMotionListener;

import javax.swing.JPanel;

public class JCanvas extends JPanel implements MouseListener, MouseMotionListener {

	private int x1 = -1, y1 = -1, x2 = -1, y2 = -1;

	public JCanvas() {
		this.setPreferredSize(new Dimension(100, 100));
		this.addMouseListener(this);
		this.addMouseMotionListener(this);
	}

	@Override
	protected void paintComponent(Graphics g) {
		super.paintComponent(g);
		
		g.drawLine(x1, y1, x2, y2);
	}

	@Override
	public void mousePressed(MouseEvent e) {
		x1 = e.getX(); x2 = x1;
		y1 = e.getY(); y2 = y1;
		repaint();
	}

	@Override
	public void mouseDragged(MouseEvent e) {
		x2 = e.getX();
		y2 = e.getY();
		repaint();
	}

	@Override
	public void mouseReleased(MouseEvent e) {
		x2 = e.getX();
		y2 = e.getY();
		repaint();
	}

	@Override
	public void mouseClicked(MouseEvent e) { }

	@Override
	public void mouseEntered(MouseEvent e) { }

	@Override
	public void mouseExited(MouseEvent e) { }

	@Override
	public void mouseMoved(MouseEvent e) { }
	
}