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

AWT/Swing Java Discussion :

Dessiner dans un JPanel


Sujet :

AWT/Swing Java

  1. #1
    Membre averti
    Profil pro
    Inscrit en
    Février 2007
    Messages
    37
    Détails du profil
    Informations personnelles :
    Âge : 41
    Localisation : Algérie

    Informations forums :
    Inscription : Février 2007
    Messages : 37
    Par défaut Dessiner dans un JPanel
    Salut, J'ai voulu desiner un rectangle dans un JPanel d'un Layout null alors j'ai crée une classe qui extends JPanel et j'ai redefiner la methode paint de JPanel
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    public class RectanglePaint extends JPanel{
    RectanglePaint(LayoutManager arg){
    super(arg);
    }
    public void paint(Graphics arg0){
    super.paint(arg);
    arg.drawRect...;
    }
    }
    lors de l'execution j'obtien une Exeption in thread "awt-event queue-o"...
    j'ai esseyer de debuger et j'ai trouver que la valeur de arg0 est null,et je ne trouve pas ou est le probleme.Merci.

  2. #2
    Membre émérite
    Inscrit en
    Mars 2006
    Messages
    848
    Détails du profil
    Informations personnelles :
    Âge : 41

    Informations forums :
    Inscription : Mars 2006
    Messages : 848
    Par défaut
    Le layout de ton JPanel n'a aucune importance pour ce que tu veux faire.
    Il n'entrera en compte que si tu y ajoutes des composants.

    dans ta méthode paint:
    super.paint(arg)
    ne va pas car l'argument que tu lui files n'est pas le bon, c'est arg0.
    De même pour la suite de la méthode.

    Essaie ça et si ça marche pas, donne-nous un peu plus de code.

  3. #3
    Membre émérite
    Inscrit en
    Mars 2006
    Messages
    848
    Détails du profil
    Informations personnelles :
    Âge : 41

    Informations forums :
    Inscription : Mars 2006
    Messages : 848
    Par défaut
    Il manque aussi un public devant ton constructeur:

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    public class RectanglePaint extends JPanel{
      public RectanglePaint(LayoutManager arg){
        super(arg);
      }
    
      public void paint(Graphics arg0){
        super.paint(arg0);
        arg0.drawRect...; 
      }
    }

  4. #4
    Membre Expert
    Avatar de ®om
    Profil pro
    Inscrit en
    Janvier 2005
    Messages
    2 815
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Janvier 2005
    Messages : 2 815
    Par défaut
    Et c'est paintComponent(Graphics) qu'il faut surcharger...

  5. #5
    Expert confirmé
    Avatar de sinok
    Profil pro
    Inscrit en
    Août 2004
    Messages
    8 765
    Détails du profil
    Informations personnelles :
    Âge : 45
    Localisation : France, Paris (Île de France)

    Informations forums :
    Inscription : Août 2004
    Messages : 8 765
    Par défaut
    D'ailleur paint et paintComponent ne doivent pas être public mais protected quand on les redéfinis

  6. #6
    Membre averti
    Profil pro
    Inscrit en
    Février 2007
    Messages
    37
    Détails du profil
    Informations personnelles :
    Âge : 41
    Localisation : Algérie

    Informations forums :
    Inscription : Février 2007
    Messages : 37
    Par défaut
    Non ce n'est pas ça le probleme,ce code la je l'ai ecriver maintenant et j'ai fait ces erreur ,le source original n'est pas la ou je suis et il ne contien pas d'erreur de syntax le programe marche normalement mais quand j'essaye d'executer ça
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    1)RectanglePaint pan=new RectanglePaint(null);
    JPanel p=new JPanel();
    2)p.add(pan);
    il me sort l'exeption et il m'indique les ligne 1 et 2
    si vous avez un autre methode peut etre pour dessiner dans un JPanel(avec le refrechement bien sur lors le resize et hide/show)

  7. #7
    Membre averti
    Profil pro
    Inscrit en
    Février 2007
    Messages
    37
    Détails du profil
    Informations personnelles :
    Âge : 41
    Localisation : Algérie

    Informations forums :
    Inscription : Février 2007
    Messages : 37
    Par défaut
    je vais essayer avec ce que dit sinok et rom et je vais voir

  8. #8
    Membre averti
    Profil pro
    Inscrit en
    Février 2007
    Messages
    37
    Détails du profil
    Informations personnelles :
    Âge : 41
    Localisation : Algérie

    Informations forums :
    Inscription : Février 2007
    Messages : 37
    Par défaut
    Merci ca a marcher.

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. Dessiner dans un JPanel
    Par mattyeux dans le forum AWT/Swing
    Réponses: 7
    Dernier message: 20/12/2006, 13h16
  2. probleme pour dessiner dans un JPanel
    Par L4BiN dans le forum AWT/Swing
    Réponses: 9
    Dernier message: 02/08/2006, 15h01
  3. [Debutant]Dessiner dans plusieurs JPanels. Probleme
    Par ahage4x4 dans le forum AWT/Swing
    Réponses: 5
    Dernier message: 22/05/2006, 12h32
  4. Dessiner dans différents JPanels
    Par N@sH dans le forum Agents de placement/Fenêtres
    Réponses: 2
    Dernier message: 20/05/2005, 15h39
  5. Dessiner dans un JPanel
    Par Oliveuh dans le forum Composants
    Réponses: 5
    Dernier message: 19/07/2004, 12h13

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