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
MetalLookAndFeel.setCurrentTheme(new MonThemeSombre());
Cela rendra ton code bien plus propre (sans tous ces setBackground, setForeGround, ces setFont, ces renderers inutiles et autres...)
Partager