Synth — это внешний вид Java с возможностью смены скинов , который настраивается с помощью файла свойств XML . [1]
По словам Сан, целями синтезатора были:
SynthPainter
изображений.Synth доступен начиная с версии Java J2SE 5.0 (см. историю версий Java ). [2]
Версия Java SE 6 Update 10 и более поздние версии содержат Nimbus , кросс-платформенный интерфейс Look and Feel, реализованный с помощью Synth. Однако в целях обратной совместимости Metal по-прежнему является внешним видом Swing по умолчанию. [3]
Synth — это внешний вид с изменяемыми скинами, в котором все рисование делегируется компонентам без необходимости писать какой-либо код (см. Ресурсы Synth Look and Feel
). [4]
Однако синтезатор не обеспечивает внешний вид по умолчанию, и компоненты, которые не определены в XML- файле синтезатора, не будут окрашены. Однако можно назначить стиль по умолчанию всем остальным виджетам и настроить стили только для некоторых конкретных виджетов.
Следующее объявление XML определяет стиль с именем textfield и привязывает его ко всем текстовым полям. defaultStyle позволяет установить шрифт, цвета переднего плана и фона по умолчанию для всех остальных виджетов .
<synth> <style id= "defaultStyle" > <font name= "Verdana" size= "16" /> <state> <color value= "WHITE" type= "BACKGROUND" /> <color value= "BLACK" type = "FOREGROUND" /> </state> </style> <bind style= "defaultStyle" type= "region" key= ".*" /> <style id= "textfield" > <state> <color value= " Yellow" type= "BACKGROUND" /> </state> <imagePainter Method= "textFieldBorder" path= "textfieldborder.png" sourceInsets= "5 6 6 7" PaintCenter= "false" /> <insets top= "5" left = "6" снизу = "6" справа = "7" /> </style> <bind style= "textfield" type= "region" key= "TextField" /> </synth>
Предположим, что декларация XML определена в файле с именем synthExample.xml , следующий код загружает файл определения XML и устанавливает текущий внешний вид как Synth (загрузка Look and Feel синтезатора выполняется с помощью метода загрузки класса SynthLookAndFeel
):
SynthLookAndFeel laf = новый SynthLookAndFeel (); лаф . загрузить ( новый файл ( «synthExample.xml» ). toURI (). toURL ()); UI-менеджер . setLookAndFeel ( лаф );
Synth является новым и обеспечивает описание внешнего вида через внешний XML-файл.
Synth является новым и обеспечивает описание внешнего вида через внешний XML-файл.
Synth позволяет разработчикам быстро создавать и развертывать индивидуальный внешний вид приложения, вводя концепцию «оболочки» в программирование пользовательского интерфейса Java.
Synth Look and Feel
Документация по API