Vinnaren i pepparkakshustävlingen!
2016-04-28, 11:48
  #1
Medlem
Resetgame kallas men update funktionen kallas inte , är det någon som vet varför? detta är första gången jag provar på observer


Kod:
public class Interface extends JFrame implements Observer {

public static 
void main(String[] args) {
        
EventQueue.invokeLater(new Runnable() {
            public 
void run() {
                try {
                    Interface 
frame = new Interface();
                    
frame.setVisible(true);
                                
Model m = new Model();
                                
m.addObserver(this);
                } catch (
Exception e) {
                    
e.printStackTrace();
                }
            }
        });
    }

    public 
void update(Observable oObject a) {
        
System.out.println("I Observ");
        
    }


Kod:
public class Model extends Observable {

    public 
String Player "One";    
    public 
String[] PlayArea = new String[8];        
    private 
int GameState;
    
    public 
Model()
    {
        
GameState 0;
    }
    public 
void resetGame() 
    {
        
System.out.println("333");
        
this.GameState 3;
        
setChanged();
        
notifyObservers();
    } 
Citera
2016-04-28, 21:36
  #2
Medlem
rjonssons avatar
Kompilerar det verkligen hos dig?
m.addObserver(this); I detta contexet så är this Runnable, inte Observer och det funkar inte.
Citera

Stöd Flashback

Flashback finansieras genom donationer från våra medlemmar och besökare. Det är med hjälp av dig vi kan fortsätta erbjuda en fri samhällsdebatt. Tack för ditt stöd!

Stöd Flashback