Bonjour à tous,
voici l'implémentation d'un objet IDrawable que se "dessine" dans ma fenêtre principale ( ca donne un carré rouge ):

Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
import java.awt.Graphics;
import java.awt.Rectangle;
import java.awt.geom.Ellipse2D;
 
import Listeners.DrawabListener;
 
public interface IDrawable {
 
 
	public  void draw(Graphics g);
 
	public Rectangle getRectangle();
 
	public void setToolTipText(String string);
 
 
 
}
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
public abstract class FormDrawable   implements IDrawable {
 
	protected Rectangle rect;
	protected Color color;
 
	public FormDrawable(Color color, Point pos, Dimension dim){
		this.color=color;
		this.rect = new Rectangle(pos,dim);
	}
 
	public abstract void draw(Graphics g);
 
	public Rectangle getRectangle(){
		return (Rectangle) rect.clone();
	}
 
 
}
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
public class RectangleDrawable extends FormDrawable{
 
	public RectangleDrawable(Color color, Point pos, Dimension dim) {
		super(color, pos, dim);
 
	}
 
	public void draw(Graphics g) {
		Color c = g.getColor();
		g.setColor(color);
		g.fillRect(rect.x,rect.y,rect.height,rect.width);
		g.setColor(c);
	}
 
 
 
}
et voici comment je les instancie dans mon main:

Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
   Dimension dim  =new Dimension(8,8);
    	IDrawable Marsa = new RectangleDrawable(Color.RED,new Point(930,70),dim);
Je voudrais interagir avec cet objet par clic de souris. Comment coder un MouseListener pour cet objet très particulier ? ( l'interface MouseListener marche trivialement pour les boutons, panneaux etc... mais ,paraît-il, pas pour mon objet) Merciiii