Ciao a tutti. Ho realizzato un pinball in 2d in applet java e adesso ho deciso di trasformarlo in semplice applicazione in java. Ho fatto tutte le modifiche necessarie e il gioco benomale funziona unica pecca il doppiobuffer che non va (in applet funziona perfettamente).
questo è un pezzo del codice:
codice:
class MuoviCerchio extends JPanel implements ActionListener{ 
      ...
      private Timer timer;    //timer per la gestione dell'animazione
      private Image img; //immagine rimbalzanti 
      private Image sfondo; //immagine sfondo 
      ...
      private Image buffervirtuale;//immagine del buffer virtuale 
      private Graphics b_graph;
      public MuoviCerchio(){
            ...
            timer=new Timer(millisec,this); 
            timer.start(); 
            Toolkit toolkit = Toolkit.getDefaultToolkit(); 
            ball=toolkit.getImage("ball.png"); 
            sfondo=toolkit.getImage("sfondo.png"); 
            ...
            buffervirtuale= createImage(this.getSize().width ,this.getSize().height);
            b_graph=buffervirtuale.getGraphics();//qui durante la compilazione mi da un errore
                                                 //e il gioco non viene avviato
    }
    public void actionPerformed(ActionEvent e){
       ...
    }
    public void update(Graphics g){
        paint(g);
    }
    public void paint(Graphics g){
        g.drawImage(buffervirtuale,0,0,this);
        b_graph.drawImage(sfondo,0,0, this);//sfondo
        ...
        
    }
}
qualcuno saprebbe spiegarmi per quale motivo mi genera questo errore e come posso risolverlo???
ps:se non uso il doppiobuffer ovviamente viene fuori lo sfarfallio