IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

 Java Discussion :

Le pattern observer avec le JLabel


Sujet :

Java

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Futur Membre du Club
    Profil pro
    Inscrit en
    Août 2012
    Messages
    4
    Détails du profil
    Informations personnelles :
    Localisation : Belgique

    Informations forums :
    Inscription : Août 2012
    Messages : 4
    Par défaut Le pattern observer avec le JLabel
    Bonsoir, je suis débutant en programmation java ( je n'ai eu qu'un module d'initiation a l’algorithmique en cours du soir ^^") et j'ai un problème avec le pattern observer, y a un truc que je dois pas faire correctement.

    Je compte faire un jeu d’énigme, avec une question, une image, un jtextfield pour donner la réponse et un bouton qui sert a changer d'état ( ou chaque état représente une énigme.) pour le moment, j'essaye juste de faire communiquer mon modèle avec ma frame mais l'update ne veut pas s'activer.

    Le code du bouton:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    package controler;
    import java.awt.event.ActionEvent;
    import java.awt.event.ActionListener;
    import model.ModelEnigme;
     
    public class NextActionListener implements ActionListener {
    		ModelEnigme me = new ModelEnigme();
    		public void actionPerformed(ActionEvent arg0) {
    			me.next();
    	}
    }
    Le code de l'action du bouton (dans la classe du modèle donc):
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    public void next() {
     
    		System.out.println(state.question());
    		state.next(this);
    		setChanged();
    		notifyObservers(state.question());
    	}
    Et enfin, la méthode update qu'il y a dans ma frame:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    @Override
    	public void update(Observable arg0, Object arg1) {
    		String str = (String)arg1;
    		logo.setText(str);
    		logo.repaint();
    		System.out.println("L'etat à changé !! " +str);
    	}
    Le principe est le suivant: j'ai un état pour chacune des questions renvoyant 3 valeurs: La question, la réponse et l'image.
    Quand on donne la bonne réponse et que l'on appuie sur le bouton, le modèle change d’état et renvoie une autre question, image et réponse.
    Mais la, j'en suis juste à l'étape ou je dois juste faire changer la question dans test réponse, pour vérifier que le pattern fonctionne bien.
    J'ai donc mis quelques tests en console ( les sys.out.print...) pour vérifier et rien, la méthode update n'est même pas invoquée... J'ai du mal faire quelque chose mais je ne trouve pas ou. Pouvez vous m'aider?
    Merci d'avance.

  2. #2
    Membre expérimenté
    Avatar de Chatanga
    Profil pro
    Inscrit en
    Décembre 2005
    Messages
    211
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Décembre 2005
    Messages : 211
    Par défaut
    Peut-être as-tu tout simplement oublié d’enregistrer ton Observer auprès de ton Observable ? Par exemple :

  3. #3
    Futur Membre du Club
    Profil pro
    Inscrit en
    Août 2012
    Messages
    4
    Détails du profil
    Informations personnelles :
    Localisation : Belgique

    Informations forums :
    Inscription : Août 2012
    Messages : 4
    Par défaut
    Non, je ne l'ai pas mis en exemple mais j'ai déjà fait tout les liens a ce niveau...
    La pattern observer, c'est décidément pas ça ...

  4. #4
    Membre expérimenté
    Avatar de Chatanga
    Profil pro
    Inscrit en
    Décembre 2005
    Messages
    211
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Décembre 2005
    Messages : 211
    Par défaut
    L’erreur étant visiblement dans une autre partie de ton code, il faudrait pouvoir jeter un oeil sur le reste...

Discussions similaires

  1. Implémenter le design pattern Observer avec les services web
    Par Klemsy78 dans le forum Services Web
    Réponses: 1
    Dernier message: 12/02/2008, 16h51
  2. [Plugin][Hibernate] Patterns DAO avec hybernate
    Par BarbapapaDK dans le forum Eclipse Java
    Réponses: 1
    Dernier message: 13/03/2006, 09h53
  3. [Design Patterns] Decorator avec Swing ?
    Par herve91 dans le forum AWT/Swing
    Réponses: 10
    Dernier message: 09/10/2005, 14h00
  4. [Observateur] Précisions sur le design pattern Observer [UML]
    Par joquetino dans le forum Design Patterns
    Réponses: 2
    Dernier message: 07/10/2004, 22h35
  5. Interfaces, Pattern Observer
    Par IProg dans le forum Langage
    Réponses: 8
    Dernier message: 18/12/2003, 14h11

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo