[SWING][Synth]Lire les propriétés stockées dans synth.xml
Bonjour,
Je souhaite lire les propriétés stockées dans un fichier synth.xml par la méthode UIManager.get() (ou getColor, getBorder) et je n'y arrive pas
Fichier synth.xml (extrait, c'est le L&F Synthetica White Vision) :
Code:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22
|
<style id="tableHeader">
<state>
<font name="Tahoma" size="11" style="BOLD"/>
<color type="FOREGROUND" value="#333333" />
<color type="BACKGROUND" value="#A6EFFF" />
<object class="javax.swing.plaf.ColorUIResource" id="gridColor">
<!-- #AAAAAA -->
<int>170</int>
<int>170</int>
<int>170</int>
</object>
<defaultsProperty key="Synthetica.tableHeader.gridColor" type="idref" value="gridColor"/>
<imagePainter method="tableHeaderBackground" path="whitevision/images/tableHeaderBackground.png"
sourceInsets="0 0 2 0" destinationInsets="0 0 2 0" paintCenter="true" stretch="true"/>
</state>
</style>
<bind style="tableHeader" type="region" key="TableHeader"/>
<!-- avoids plain header text with Java SE 6 on MOUSE_OVER -->
<bind style="tableHeader" type="name" key="TableHeader.renderer"/> |
Un extrait de code :
Code:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16
|
public class Test {
public static void main(String[] args){
try {
UIManager.setLookAndFeel(new SyntheticaWhiteVisionLookAndFeel());
System.out.println(UIManager.getFont("TableHeader.font")) ;
System.out.println(UIManager.getFont("TableHeader.color")) ;
} catch (Exception e){
}
}
} |
Résultat :
Code:
1 2 3
|
javax.swing.plaf.FontUIResource[family=Dialog,name=Tahoma,style=bold,size=11]
null |
le TableHeader.font me rend bien la font déclarée.
En revanche, je n'arrive pas à accéder aux couleurs BACKGROUND et FOREGROUND. J'ai essayé TableHeader.backgroundColor,TableHeader.backgroundcolor,TableHeader.background,TableHeader.Background sans succès. En fait je tâtonne.
Je souhaiterais également accéder à l'imagePainter et à l'image qui y est déclarée.
Je sèche depuis un moment là-dessus.
Merci de votre aide :)