ynabid
Messages postés24Date d'inscriptionjeudi 2 octobre 2008StatutMembreDernière intervention 9 août 2010
-
8 août 2010 à 16:08
ynabid
Messages postés24Date d'inscriptionjeudi 2 octobre 2008StatutMembreDernière intervention 9 août 2010
-
9 août 2010 à 00:06
j'ai deux classes, GrapheGui et Controleur. Dans la première, j'ai une simple interface graphique et dans la deuxième un écouteur de la souris. ce que je veux faire c'est en gardant cette architecture, lorsque je clique sur l'interface graphique avec un bouton de la souris, un bouton s'ajoute. voilà ma source
GrapheGui
public class GrapheGui extends JFrame{
public static void main(String[] args){
GrapheGui j= new GrapheGui("yassine");
j.setDefaultCloseOperation(WindowConstants.EXIT_ON_CLOSE);
j.setLayout(new FlowLayout());
j.addMouseListener(new Controleur(j));
j.setSize(500, 500);
j.show();
}
private GrapheGui(String string) {
super(string);
}
}
Controleur
public class Controleur implements MouseListener{
private SommetGui from =null;;
private Graphe g;
private GrapheGui gG;
public Controleur(Graphe g,GrapheGui gG){
super();
this.g=g;
this.gG=gG;
}
@Override
public void mouseClicked(MouseEvent e) {
if(e.getSource() instanceof SommetGui){
if(from==null)
from=(SommetGui) e.getSource();
else{
SommetGui to=(SommetGui) e.getSource();
gG.ajouterArret(new ArretGui(from.x+20,from.y+20,to.x+20,to.y+20));
}
}else if(e.getSource() instanceof JFrame){
Sommet s=new Sommet();
g.ajouterSommet(s);
SommetGui sG=new SommetGui(e.getX(),e.getY());
s.addObserver(sG);
synchronized(this){
gG.getContentPane().add(new JButton("yassine"));
}
gG.update(gG.getGraphics());
}
}
public void mousePressed(MouseEvent e) {
}
public void mouseReleased(MouseEvent e) {
}
public void mouseEntered(MouseEvent e) {
}
public void mouseExited(MouseEvent e) {
}
}