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) :
Un extrait de code :
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
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"/>
Résultat :
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 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){ } } }
le TableHeader.font me rend bien la font déclarée.
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3 javax.swing.plaf.FontUIResource[family=Dialog,name=Tahoma,style=bold,size=11] null
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![]()
Partager