web-dev-qa-db-fra.com

Comment définir la couleur d'arrière-plan d'un JButton sur Mac OS

Normalement, avec Java Swing, vous pouvez définir la couleur d'arrière-plan d'un bouton avec:

myJButton.setBackground(Color.RED);

ce qui rendrait le bouton rouge. Mais sous Mac OS, cette méthode semble être ignorée. Le bouton reste juste la couleur par défaut.

Comment définir la couleur d'un JButton sur Mac OS?

26
Stephane Grenier

Avez-vous essayé de définir JButton.setOpaque (true)?

JButton button = new JButton("test");
button.setBackground(Color.RED);
button.setOpaque(true);
36
codethulhu

Avez-vous essayé de définir la bordure peinte sur faux?

JButton button = new JButton();
button.setBackground(Color.red);
button.setOpaque(true);
button.setBorderPainted(false);

Cela fonctionne sur mon mac :)

31
MrSmileFace

Si vous n'êtes pas obligé d'utiliser l'apparence d'Apple, une solution simple consiste à mettre le code suivant dans votre application ou applet, avant d'ajouter des composants GUI à votre JFrame ou JApplet:

 try {
    UIManager.setLookAndFeel( UIManager.getCrossPlatformLookAndFeelClassName() );
 } catch (Exception e) {
            e.printStackTrace();
 }

Cela définira l'aspect et la convivialité sur l'aspect et la convivialité multiplateforme, et la méthode setBackground () fonctionnera ensuite pour modifier la couleur d'arrière-plan d'un JButton.

19
JoJo