2011-05-31 4 views
0

J'utilise Java Look and Feel. Je suis capable de spécifier le style de plusieurs composants. Néanmoins, je ne suis pas en mesure de définir la couleur de police d'un bouton pour l'état par défaut. Le texte des boutons est toujours affiché en noir, mais lorsque vous effectuez la mise au point/la sélection/déplacez la souris sur la couleur du texte, elle devient blanche et ensuite noire. Voici un extrait de mon synthé-fichier XML:Réglage de la couleur de police du bouton en utilisant XML et Java Swing Synth LaF

<synth> 
<style id="defaultStyle"> 
    <font name="Dialog" size="16" /> 
</style> 
<bind style="defaultStyle" type="region" key=".*" /> 
<style id="button"> 
    <property key="Button.textShiftOffset" type="integer" value="1"/> 
    <state> 
     <imagePainter method="buttonBackground" path="./images/JButton/default.png" 
      sourceInsets="20 24 20 24" paintCenter="true" stretch="true"/> 
     <insets top="20" left="24" bottom="20" right="24"/> 
     <color type="TEXT_FOREGROUND" value="#FFFFFF"/> 
    </state> 
</style> 
<bind style="button" type="region" key="Button" /> 
... 
</synth> 

Est-ce que je fais quelque chose de mal? Comment puis-je changer la couleur de police par défaut du bouton?

Quelques informations supplémentaires:

  • Java 1.6
  • Windows 7, 32 bits

Répondre

1

Paraît que je réussi à le réparer. Pour aucune raison connue, j'ai dû utiliser la teinture de couleur "FOREGROUND".

+0

Merci, le javadoc ne spécifie pas 'FOREGROUND' est en fait la couleur du texte pour Button. – afk5min

0

Essayez plutôt

<style id="button"> 
    <property key="Button.textShiftOffset" type="integer" value="1"/> 
    <font name="Dialog" size="12"/> 
    <state> 
     <imagePainter method="buttonBackground" path="./images/JButton/default.png" 
      sourceInsets="20 24 20 24" paintCenter="true" stretch="true"/> 
     <insets top="20" left="24" bottom="20" right="24"/> 
     <color type="TEXT_FOREGROUND" value="#FFFFFF"/> 
    </state> 
</style> 
<bind style="button" type="region" key="Button" /> 

Cette link pourrait utile pour vous.

Questions connexes