Partage
  • Partager sur Facebook
  • Partager sur Twitter

Problème d'une boucle.

Sujet résolu
Anonyme
    20 février 2012 à 4:00:27

    Salut tout le monde, j'ai un bug que je n'arrive pas à résoudre (aucun problème sur eclipse pourtant..)
    Bref, je crée un jeu 2D grâce a swing, et j'ai du mal a l'affichage. J'ai fait un tableau contenant plein de jolis 0 et 1 pour faire un niveau, mais que je fait un for, il plante. Code du moment inintéressant :
    public void paintComponent(Graphics g){
    		super.paintComponent(g);
    		for(int i=0; i < data.getTerrain().getCases()[0].length; i++) {
    			for(int j=0; j <data.getTerrain().getCases().length; j++) {
    				g.setColor(data.getTerrain().getImagesColor()[data.getTerrain().getCases()[j][i]]);
    				g.drawRect(i*tailleCase, j*tailleCase, tailleCase, tailleCase);
    			}
    		}
    	}
    

    Le data envoi juste le tableau, et l'erreur :
    Exception in thread "AWT-EventQueue-0" java.lang.NullPointerException
            at fr.gamenwatch.test.Render.paintComponent(Render.java:16)
            at javax.swing.JComponent.paint(Unknown Source)
            at javax.swing.JComponent.paintChildren(Unknown Source)
            at javax.swing.JComponent.paint(Unknown Source)
            at javax.swing.JLayeredPane.paint(Unknown Source)
            at javax.swing.JComponent.paintChildren(Unknown Source)
            at javax.swing.JComponent.paintToOffscreen(Unknown Source)
            at javax.swing.RepaintManager$PaintManager.paintDoubleBuffered(Unknown Source)
            at javax.swing.RepaintManager$PaintManager.paint(Unknown Source)
            at javax.swing.RepaintManager.paint(Unknown Source)
            at javax.swing.JComponent.paint(Unknown Source)
            at java.awt.GraphicsCallback$PaintCallback.run(Unknown Source)
            at sun.awt.SunGraphicsCallback.runOneComponent(Unknown Source)
            at sun.awt.SunGraphicsCallback.runComponents(Unknown Source)
            at java.awt.Container.paint(Unknown Source)
            at java.awt.Window.paint(Unknown Source)
            at javax.swing.RepaintManager.paintDirtyRegions(Unknown Source)
            at javax.swing.RepaintManager.paintDirtyRegions(Unknown Source)
            at javax.swing.RepaintManager.prePaintDirtyRegions(Unknown Source)
            at javax.swing.RepaintManager.access$700(Unknown Source)
            at javax.swing.RepaintManager$ProcessingRunnable.run(Unknown Source)
            at java.awt.event.InvocationEvent.dispatch(Unknown Source)
            at java.awt.EventQueue.dispatchEventImpl(Unknown Source)
            at java.awt.EventQueue.access$000(Unknown Source)
            at java.awt.EventQueue$1.run(Unknown Source)
            at java.awt.EventQueue$1.run(Unknown Source)
            at java.security.AccessController.doPrivileged(Native Method)
            at java.security.AccessControlContext$1.doIntersectionPrivilege(Unknown Source)
            at java.awt.EventQueue.dispatchEvent(Unknown Source)
            at java.awt.EventDispatchThread.pumpOneEventForFilters(Unknown Source)
            at java.awt.EventDispatchThread.pumpEventsForFilter(Unknown Source)
            at java.awt.EventDispatchThread.pumpEventsForHierarchy(Unknown Source)
            at java.awt.EventDispatchThread.pumpEvents(Unknown Source)
            at java.awt.EventDispatchThread.pumpEvents(Unknown Source)
            at java.awt.EventDispatchThread.run(Unknown Source)


    Voila, merci d'avance ;)
    • Partager sur Facebook
    • Partager sur Twitter
      22 février 2012 à 0:38:49

      Exception in thread "AWT-EventQueue-0" java.lang.NullPointerException
              at fr.gamenwatch.test.Render.paintComponent(Render.java:16)


      T'essaies d’appeler la méthode paintComponent à la ligne 16 mais ta référence est null.
      C'est quoi la ligne 16 de ta classe Render ?
      • Partager sur Facebook
      • Partager sur Twitter
      Anonyme
        22 février 2012 à 1:51:39

        C'est le premier FOR.
        EDIT : au passage, j'ai tester, cela vient bien de la boucle, ce qu'elle contient n'affecte rien.
        EDIT 1 : Merci, tu m'a fait remarquer qu'en fait data ne renvoi rien.
        • Partager sur Facebook
        • Partager sur Twitter

        Problème d'une boucle.

        × Après avoir cliqué sur "Répondre" vous serez invité à vous connecter pour que votre message soit publié.
        × Attention, ce sujet est très ancien. Le déterrer n'est pas forcément approprié. Nous te conseillons de créer un nouveau sujet pour poser ta question.
        • Editeur
        • Markdown