UIDefaults des UIManagers
javax.swing.UIDefaults
javax.swing.UIManager
Verschiedene Einstellung des Look & Feels lassen sich einfach durch die Properties des UIManagers beeinflussen:
String key = ... // Siehe Tabelle unten String value = ... // Siehe Tabelle unten UIManager.put(key, value);
oder:
String key = ... // Siehe Tabelle unten String value = ... // Siehe Tabelle unten UIManager.getDefaults().put(key, value);
Einige Beispiele für die UIProperties (es gibt wesentlich mehr):
key value (Beispiel(e)) Erläuterung ---------------------------------------------------------------------------------------------------- Button ------ ButtonUI MyButtonUI.class.getName() Siehe *1) Button.border new EmptyBorder(2, 2, 2, 2) Erzeugt einen Button ohne Rand ScrollBar --------- ScrollBar.background Color.GRAY Hintergrundfarbe der Scrollbar ScrollBar.darkShadow Color.RED Farbe des äußeren Rahmens der Scrollbar ScrollBar.gradient new ArrayList<Object>(5) Gradient des Sliders (Siehe unten) ScrollBar.shadow Color.RED Farbe des inneren Rahmens der Scrollbar ScrollBar.width 16 Breite der Scrollbar ScrollBarUI MetalScrollBarUI.class.getName() Das grundsätzliche Aussehen der Scrollbar TextField --------- TextField.border BorderFactory.createLineBorder(Color.RED) Setzt die Farbe des Rahmens PasswordField.border BorderFactory.createLineBorder(Color.GREEN) Setzt die Farbe des Rahmens ToolBar ------- ToolBar.font new Font(..) Setzt den Zeichensatz für alle JToolBars
*1) Setzt ein neues UI für alle Buttons.
Zusätzlich muss(!) die Klasse MyButtonUI noch die folgende Methode implementieren:
public static ComponentUI createUI(JComponent c) { return new MyButtonUI(); }
Gradient des ScrollBar-Sliders (funktioniert nicht mit jedem UI; z.B. MetalScrollBarUI funktioniert):
ArrayList<Object> gradients = new ArrayList<Object>(5); gradients.add(0.2f); gradients.add(0.0f); gradients.add(new Color(232, 232, 232)); gradients.add(new Color(232, 232, 232)); gradients.add(new Color(168, 168, 168));
Stichworte:
UI UIDefaults eigenes UI ButtonUI setzen UIProperties