[swing] faut cliquer 2 fois...
Bonjour,
Voilà j'ai fait une interface graphique en java, dans les règles du modèle-vue-controleur, bref, ça marche sauf que...
J'ai un bouton "ouvrir" qui ne fait qu'un test d'une combo et qui fait un system.out.println("bien ou pas bien"). La premiere fois que je clique, rien ne se passe, après, chaque clic fonctionne.
J'ai un autre bouton "nouveau profil". Alors lui il notifie les fenetres observer et il lance une nouvelle fenetre. La premiere fois que je clique, la 2e fenetre s'affiche, mais la communication observer/observable ne se fait pas, alors que quand je clique une deuxième fois, toutes les actions sont traitées.
Bref, au premier clic ça nous donne un résultat de moins de 50% des opérations attendues, alors qu'après tout fonctionne, je vois absolument pas d'ou ça peut venir...
extraits :
Panneau.java :
Code:
1 2 3 4
|
cmdNouveau = new JButton("Nouveau profil...");
cmdNouveau.addActionListener(ctrl);
add(cmdNouveau); |
Controleur.java :
Code:
1 2 3 4 5 6
|
public void actionPerformed(ActionEvent arg0) {
...
else if (commande.equals("Nouveau profil..."))
mod.creer();
} |
Modele.java :
Code:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17
|
private Controleur ctrl;
public Modele()
{
// creation de la fenetre
ctrl = new Controleur(this);
new Vue(ctrl, this);
}
...
//On a cliqué sur nouveau profil
public void creer()
{
notifyObservers("fermer");
setChanged();
mvc_profil.Modele.getModele();
}
... |
Voilà, en espérant que ça vous parle... Merci :)