begin process at 2010 02 10 12:52:43
  Trouver un code source :
 
dans
 
Accueil > Forum > 

JAVA / J2EE / J2ME

 > 

Divers

 > 

Débutant(e)

 > 

Problème Swing avec la méthode getGraphics()


Derniers messages déposésPoser une question dans le forum ou lancer une discussion

Problème Swing avec la méthode getGraphics()

mercredi 19 mars 2008 à 16:46:55 | Problème Swing avec la méthode getGraphics()

momoSahli

Membre Club
Salut à tous,

je suis débutant en programmation java Swing, et je fais face à un problème que je ne réussis pas à identifier.

Voilà mon code :

import java.awt.*;
import java.awt.event.*;
import javax.swing.*;

class Dessiner extends JPanel {
    private Graphics g;
   
    public Dessiner(){
        g = getGraphics();    // la ligne qui retourne l'exception
        g.drawLine(10, 20, 30, 40);
    }
   
    public static void main(String[] argv) {
      JFrame fenetre = new JFrame();
      fenetre.setContentPane(new Dessiner());
      fenetre.show();
  }
}


Voici l'exception levée :

Exception in thread "main" java.lang.NullPointerException
    at Dessiner.<init>(Tester.java:10)
    at Dessiner.main(Tester.java:15)


Merci d'avance
mercredi 19 mars 2008 à 17:41:20 | Re : Problème Swing avec la méthode getGraphics()

laurent1024

dans ta classer Dessiner tu doit redefinir la methode paintComponent pour dessiner, il ne faut pas dessiner directement dans le constructeur.
protected void paintComponent(Graphics g) {
super.paintComponent(g);
g.drawLine(10, 20, 30, 40);

Cdt
   
jeudi 20 mars 2008 à 10:50:20 | Re : Problème Swing avec la méthode getGraphics()

Chatbour

Membre Club
merci pour la réponse.

mais le problème n'est pas là.

import javax.swing.*;
import java.awt.*;


class Dessin extends JPanel{
    protected void paintComponent(Graphics g){
        super.paintComponent(g);
        g.drawLine(10, 20, 30, 40);
    }
   
    public void dessiner(){
        this.getGraphics().drawOval(10, 30, 20, 20);
    }
}


class Fenetre extends JFrame{
    private Dessin dessin = new Dessin();
   
    public Fenetre(){
        Container conteneur = this.getContentPane();
        conteneur.add(dessin,BorderLayout.CENTER);
        dessin.dessiner();
       
        this.setSize(300, 200);
        this.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
        this.show();
    }
   
   
}

public class Tester{
    public static void main(String[] args){
        Fenetre f = new Fenetre();
       
    }
}


Pourquoi l'appel à getGraphics() dans la méthode dessiner provoque la même exception ?
jeudi 20 mars 2008 à 11:04:59 | Re : Problème Swing avec la méthode getGraphics()

Chatbour

Membre Club
Salut,

Mon ami momoSahli s'est trompé et il a répondu en utilisant mon compte qui était connécté par hasard.

C'est tout.
jeudi 20 mars 2008 à 11:27:56 | Re : Problème Swing avec la méthode getGraphics()

laurent1024

Bonjour.
Le méchanisme de dessin a des régles précise : le dessin doit persister lors du redimensionnement de la fenêtre par exemple. Je te conseille les liens suivants :
http://java.sun.com/products/jfc/tsc/articles/painting/index.html (anglais)
http://java.developpez.com/faq/gui/?page=graphique_general_dessin#GRAPHIQUE_DESSIN_g2d
http://java.developpez.com/faq/gui/?page=graphique_general_dessin#GRAPHIQUE_DESSIN_fonctionnement

Cdt


Cette discussion est classée dans : problème, java, swing, dessiner, getgraphics


Répondre à ce message

Sujets en rapport avec ce message

Problème Timer (Swing) JAVA [ par kevvvv ] Bonjour, j'ai un problème avec les Timer (Swing) de Java. En fait, je dois réaliser un projet d'école et mon thème est Super Mario Bros Tout fonctionn [Problème] pour créer une jtable avec cellule fusionnable [ par jbwan56 ] Bonjour,j'ai un petit soucis pour créer une JTable où l'on peut fusionner les cellules.J'ai essayé cet exemple : http://www.crionics.com/produc [JDOM] problème avec SAXBuilder [ par sylsau ] Bonjour, Mon problème est une peu particulier dans la mesure où il concerne plusieurs domaines mais étant donné que le vrai problème semble venir de Aide à un nouveau en java-objet swing [ par douuuud ] Bonjour Je commence à programmer en java et mon but est le suivant : avoir un bouton dans une fenetre qui me permet de creer un rectangle a un endroi problème dans un projet JAVA [ par Ludboy ] Bonjour a tous!!! Dans le domaine de l'algo-prog, je dois réaliser un projet JAVA pour le début du mois de Janvier... Seul problème, j'ai beaucoup de Dessiner en Java [ par ghorayeba ] Bonjouron dispose d'une matrice de dimensions 1000*1000 et qui contient 50 objets distribués dans cette matrice, et je voudrai bien dessiner les objet Problème de connexion Java-MySQL [ par Nisnor ] Bonjour à tous et à toutes...Je suis nouveau sur ce site et j'espère trouver de l'aide a mes problèmes (actuels et futurs :D)...J'ai créé un jeu en PH Problème avec la classe Double [ par Lecoco_29 ] Bonjour à tous,J'ai un problème et je ne comprend pas pourquoi java réagit comme ça.Je souhaite créer un objet Double avec comme valeur 1/3. Quand je java sous linux [ par infojava ] j ai installé le jdk1.5.0_06 sous linux mais il ne reconnait pas les composants Swing. quel est le probleme ? les Swing existent sous linux? comment l java web chat [ par nager ] Bionjour , j'ai un problème du au fait que je voudrais réaliser un chat qui doit être intégré dans une page webcelà en java Mon problème est que je n


Nos sponsors


Sondage...

Comparez les prix

CalendriCode

Février 2010
LMMJVSD
1234567
891011121314
15161718192021
22232425262728

Consulter la suite du CalendriCode

 
Développement réalisé par Nicolas SOREL (Nix) avec l'aide de : Cyril DURAND et Emmanuel (EBArtSoft), Merci à Vincent pour ses précieux conseils.
CodeS-SourceS.com© Toute reproduction même partielle est interdite sauf accord écrit du Webmaster
CodeS-SourceS.com© est une marque déposée tous droits réservés

Google Coop CodeS-SourceS Google Coop CodeS-SourceS
Temps d'éxécution de la page : 0,359 sec (4)

Nous contacter | Annoncer sur CodeS-SourceS | Mentions légales