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

2D Java Discussion :

Couleur fond JPanel


Sujet :

2D Java

  1. #1
    Membre régulier
    Profil pro
    INGENIEUR DE RECHERCHE
    Inscrit en
    Février 2003
    Messages
    74
    Détails du profil
    Informations personnelles :
    Âge : 57
    Localisation : France, Charente Maritime (Poitou Charente)

    Informations professionnelles :
    Activité : INGENIEUR DE RECHERCHE

    Informations forums :
    Inscription : Février 2003
    Messages : 74
    Points : 87
    Points
    87
    Par défaut Couleur fond JPanel
    Bonjour,

    Je défini la couleur de fond du JPanel dans la classe Fenetre.
    La couleur s'affiche bien tant que je n'introduis pas d'objet Graphics dans le JPanel (classe Panneau vide par exemple).
    Sinon la couleur ne s'affiche plus mais le dessin oui (ici un trait).
    J'ai essayé plein de choses, j'ai parcourus une moultitude de forums mais là je sèche.

    Le code de la classe Fenetre
    C'est dans cette classe que je définis la couleur de fond du JPanel
    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
    import java.awt.Color;
    import javax.swing.JFrame;
    import javax.swing.JPanel;
    
    public class Fenetre extends JFrame {
    
    	private JPanel pan;
    	public Fenetre() {
    
    		this.setSize(300,150);
    		this.setTitle("Ma Fenetre");
    		
    		pan = new Panneau();
    		
    		this.setContentPane(pan);
    		pan.setBackground(Color.orange);
    
    	}
    
    }

    Le code du JPanel

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    import java.awt.Color;
    import java.awt.Graphics;
    
    
    import javax.swing.JPanel;
    
    
    public class Panneau extends JPanel {
    	
    	public void paintComponent(Graphics g){		
    		g.drawLine(15, 10, 100, 50);
    	}
    }
    Si j'enlève la méthode paintComponent alors la couleur s'affiche.

    Merci pour votre aide
    Spiale

  2. #2
    Membre régulier
    Profil pro
    INGENIEUR DE RECHERCHE
    Inscrit en
    Février 2003
    Messages
    74
    Détails du profil
    Informations personnelles :
    Âge : 57
    Localisation : France, Charente Maritime (Poitou Charente)

    Informations professionnelles :
    Activité : INGENIEUR DE RECHERCHE

    Informations forums :
    Inscription : Février 2003
    Messages : 74
    Points : 87
    Points
    87
    Par défaut
    Information supplémentaire si j'utilise un type Panel à la place de JPanel alors çà marche.
    Il ne me reste plus qu'à chercher ce que je perd et ce que je gagne dans l'affaire.

    J'aimerai néanmoins trouver une solution pour le type JPanel
    Spiale

  3. #3
    Membre éclairé Avatar de herch
    Profil pro
    Inscrit en
    Mai 2006
    Messages
    655
    Détails du profil
    Informations personnelles :
    Âge : 38
    Localisation : Canada

    Informations forums :
    Inscription : Mai 2006
    Messages : 655
    Points : 773
    Points
    773
    Par défaut
    salut,

    essaie en ajoutant
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    super.paintComponent(g);
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
     
    public void paintComponent(Graphics g){
    	super.paintComponent(g);
    	g.drawLine(15, 10, 100, 50);
    }

  4. #4
    Membre régulier
    Profil pro
    INGENIEUR DE RECHERCHE
    Inscrit en
    Février 2003
    Messages
    74
    Détails du profil
    Informations personnelles :
    Âge : 57
    Localisation : France, Charente Maritime (Poitou Charente)

    Informations professionnelles :
    Activité : INGENIEUR DE RECHERCHE

    Informations forums :
    Inscription : Février 2003
    Messages : 74
    Points : 87
    Points
    87
    Par défaut
    Merci pour ta réponse.

    la solution que tu me propose déjà essayé a été.
    Mais comme le passé ne ressemble pas au futur j'ai réessayé et là çà marche.

    J'ai quand aussi déplacé l'appel de la méthode setBackground dans le constructeur de la classe de type JPanel.

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
     
    public class Panneau extends JPanel {
     
    	public Panneau(){
    		this.setBackground(Color.orange);
    	}
     
    	public void paint(Graphics g){
    		super.paintComponent(g);
    		g.drawLine(15, 10, 100, 50);
     
    	}
    }
    Spiale

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

Discussions similaires

  1. changer dynamiquement couleur fond input
    Par SunSyS dans le forum Général JavaScript
    Réponses: 11
    Dernier message: 21/09/2006, 18h01
  2. Changement couleur fond et couleur texte au passage souris
    Par Jiraiya42 dans le forum Balisage (X)HTML et validation W3C
    Réponses: 12
    Dernier message: 01/02/2006, 14h18
  3. [css] [xhtml] affichage couleur fond de page
    Par TERRIBLE dans le forum Mise en page CSS
    Réponses: 12
    Dernier message: 30/12/2005, 13h06
  4. changer couleur fond de cellule à la selection checkbox
    Par khoudj dans le forum Général JavaScript
    Réponses: 11
    Dernier message: 28/12/2005, 19h08
  5. couleur fond tableau
    Par soony dans le forum Général JavaScript
    Réponses: 5
    Dernier message: 09/08/2005, 14h58

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