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 :

Problème avec l'arrière plan d'un JComboBox


Sujet :

AWT/Swing Java

  1. #1
    Membre habitué
    Profil pro
    Inscrit en
    Mai 2006
    Messages
    350
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mai 2006
    Messages : 350
    Points : 130
    Points
    130
    Par défaut Problème avec l'arrière plan d'un JComboBox
    Bonjour,

    J'utilise un JComboBox, j'ai crée un Rendrer de la façon suivante :
    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
     
     final Font font = getFont();
            setRenderer(new ListCellRenderer() {
     
                @Override
                public Component getListCellRendererComponent(JList list, Object value,
                        int index, boolean isSelected, boolean cellHasFocus) {
     
                    BasicComboBoxRenderer basicComboBoxRenderer = new BasicComboBoxRenderer();  
                    basicComboBoxRenderer.getListCellRendererComponent(list, value, index, isSelected,
                            cellHasFocus);
                    Font font2 = new Font(font.getName(), Font.TRUETYPE_FONT, fontSizeEcamComboBox);
                    basicComboBoxRenderer.setFont(font2.deriveFont(100));
                    return basicComboBoxRenderer;
                }
            });
    ça marche bien, mais le suel souci que j'ai, c'est que l'arrière plan de la liste des éléments du comboBox est en grille, je veux la rendre en noire comme le reste de la page (voir pièce joint "ComboBackGround.JPG" SVP).

    Par avance Merci.

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

    Informations forums :
    Inscription : Août 2004
    Messages : 8 765
    Points : 12 977
    Points
    12 977
    Par défaut
    La classe BasicComboBoxRenderer hérite de JLabel.

    Donc on peut parfaitement appeler la méthode setBackground dessus. Elle fonctionnera pour peu que l'on ait appelé la méthode setOpaque(true) au préalable.

    Enfin pour le genre de manipulations que tu cherche à faire, c'est à dire changer l'intégralité des couleurs d'une application, il serait amplement préférable de passer par les possibilités offertes par le MetalLookAndFeel fourni par java.

    Il suffit de créer une classe héritant de DefaultMetalTheme contenant les couleurs voulues, puis d'appliquer ce thème via la méthode statique
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    MetalLookAndFeel.setCurrentTheme(new MonThemeSombre());
    Cela rendra ton code bien plus propre (sans tous ces setBackground, setForeGround, ces setFont, ces renderers inutiles et autres...)

  3. #3
    Membre habitué
    Profil pro
    Inscrit en
    Mai 2006
    Messages
    350
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mai 2006
    Messages : 350
    Points : 130
    Points
    130
    Par défaut
    Bonjour,

    Merci pour la réponse, en faîte je veux changer juste l arrière plan du combo en noire, et pas l arriere plan de toute l application.

    Merci.

Discussions similaires

  1. [WB16] - Problèmes avec le champ PLANNING
    Par JipeMediabat dans le forum WebDev
    Réponses: 0
    Dernier message: 07/05/2011, 08h28
  2. Réponses: 3
    Dernier message: 27/11/2008, 17h50
  3. Encore un souci avec l'arrière-plan Word !
    Par spyto dans le forum Word
    Réponses: 5
    Dernier message: 28/05/2008, 16h24
  4. Problème couleur d'arrière plan des frames sous Firefox
    Par darkazuria dans le forum Balisage (X)HTML et validation W3C
    Réponses: 3
    Dernier message: 13/05/2008, 12h54
  5. [BufferedGraphics] Lenteurs avec un arrière plan
    Par PoZZyX dans le forum Windows Forms
    Réponses: 17
    Dernier message: 04/02/2008, 20h49

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