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 :

[RESOLU]dessins (Graphics) qui n'apparaissent pas dans le JPanel


Sujet :

AWT/Swing Java

  1. #1
    Membre confirmé
    Homme Profil pro
    Développeur informatique
    Inscrit en
    Février 2008
    Messages
    764
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Haute Garonne (Midi Pyrénées)

    Informations professionnelles :
    Activité : Développeur informatique
    Secteur : High Tech - Électronique et micro-électronique

    Informations forums :
    Inscription : Février 2008
    Messages : 764
    Points : 577
    Points
    577
    Par défaut [RESOLU]dessins (Graphics) qui n'apparaissent pas dans le JPanel
    Bonjour,

    Je souhaite faire un dessin dans un JPanel mais ce dernier ne s'affiche pas.
    En fait j'essaie d'appeler la méthode paint() depuis le panneau (ligne 20) mais si je passe en argument "Graphics g" (graphics cannot be resolved to a variable) ou "new Grahics()" (Graphics cannot be resolved to a type) rien n'est accepté par la JVM (ou par eclipse ...). Le seul argument accepté est getGraphics() mais celui-ci renvoie un NULL et donc cela déclenche une exception lors du lancement du programme ....

    Du coup, je ne sais pas comment afficher mes dessins dans le JPanel.

    Voici le code du panneau :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    public class PanneauDes extends JPanel {
     
    	public PanneauDes() {
    		super(new FlowLayout());
     
    		DessinDes dd = new DessinDes();
    		dd.setBackground(Color.RED);
    		dd.setPreferredSize(new Dimension(100, 100));
    		dd.paint(new Graphics());
    	}
    }
    et le code de la classe où le dessin se situe :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    public class DessinDes extends JPanel {
    	public DessinDes() {
     
    	}
     
    	@Override
        public void paint(Graphics g) {
            super.paint(g);
            g.setColor(Color.RED);
            g.fillRect(10,10,80,80);
            g.setColor(Color.BLUE);
            g.fillOval(150,50,80,80);
        }
     
    }
    et la classe Fenetre depuis laquelle j'ajoute le panneau dans la fenetre (à la ligne 20) :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
    28
    29
    public class Fenetre extends JFrame{
    	public Fenetre() {
    		super("Jeu de dés");
     
    		WindowListener l = new WindowAdapter() {
    			public void windowClosing(WindowEvent e) {
    				System.exit(0);
    			}
    		};
    		addWindowListener(l);
     
    		this.setExtendedState(JFrame.MAXIMIZED_BOTH);
    		this.setVisible(true);
     
    		JPanel panneau = new JPanel(new BorderLayout());
     
    		PanneauJoueurs pj = new PanneauJoueurs();
    		PanneauCommandes pc = new PanneauCommandes();
    		PanneauScore ps = new PanneauScore();
    		PanneauDes pd = new PanneauDes();
     
    		panneau.add(ps, BorderLayout.EAST);
    		panneau.add(pj, BorderLayout.NORTH);
    		panneau.add(pd, BorderLayout.CENTER);
    		panneau.add(pc, BorderLayout.SOUTH);
     
    		this.setContentPane(panneau);
    	}
    }
    Je vous remercie pour votre aide !

  2. #2
    Modérateur
    Avatar de wax78
    Homme Profil pro
    Chef programmeur
    Inscrit en
    Août 2006
    Messages
    4 085
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 43
    Localisation : Belgique

    Informations professionnelles :
    Activité : Chef programmeur
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Août 2006
    Messages : 4 085
    Points : 8 004
    Points
    8 004
    Par défaut
    Ton jPanel "DessinDes", n'est ajouté à aucun autre jPanel ou jFrame, donc forcement tu ne le verras jamais.

    Ensuite tu n'as pas besoin d'appeler paint(...) swing s'en chargera tout seul (sauf cas spéciaux).

  3. #3
    Membre confirmé
    Homme Profil pro
    Développeur informatique
    Inscrit en
    Février 2008
    Messages
    764
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Haute Garonne (Midi Pyrénées)

    Informations professionnelles :
    Activité : Développeur informatique
    Secteur : High Tech - Électronique et micro-électronique

    Informations forums :
    Inscription : Février 2008
    Messages : 764
    Points : 577
    Points
    577
    Par défaut add
    Bonjour,

    Il me faut ajouter un
    Merci

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

Discussions similaires

  1. [XL-2010] macros qui n'apparaissent pas dans le fenetre d'execution
    Par Guido76 dans le forum Macros et VBA Excel
    Réponses: 6
    Dernier message: 10/02/2018, 18h18
  2. Réponses: 1
    Dernier message: 13/08/2016, 21h28
  3. Lister articles qui n'apparaissent pas dans une table
    Par Maryy dans le forum Langage SQL
    Réponses: 3
    Dernier message: 15/01/2013, 10h12
  4. Images eps qui n'apparaissent pas dans le PDF
    Par Isythiel dans le forum Tableaux - Graphiques - Images - Flottants
    Réponses: 3
    Dernier message: 19/06/2009, 16h13
  5. Réponses: 10
    Dernier message: 12/06/2008, 23h25

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