java.lang.Object javax.swing.LookAndFeel javax.swing.plaf.basic.BasicLookAndFeel javax.swing.plaf.synth.SynthLookAndFeel
public class SynthLookAndFeel
SynthLookAndFeel 提供创建定制外观的基础。SynthLookAndFeel 不直接提供一个外观,所有绘制都被委托。您需要通过 load(java.io.InputStream, java.lang.Class
)
方法提供一个配置文件,或者给 setStyleFactory(javax.swing.plaf.synth.SynthStyleFactory)
提供自己的 SynthStyleFactory
。有关加载文件的示例,请参阅包摘要,有关为 setStyleFactory
提供自己的 SynthStyleFactory
的示例,请参阅 SynthStyleFactory
。
警告:此类实现 Serializable
,这是扩展 BasicLookAndFeel
的副作用。此类并不打算被序列化。试图对该类进行序列化将导致 NotSerializableException
。
构造方法摘要 | |
---|---|
SynthLookAndFeel() 创建一个 SynthLookAndFeel。 |
方法摘要 | |
---|---|
static ComponentUI |
createUI(JComponent c) 为传入的 JComponent 创建 Synth 外观 ComponentUI 。 |
UIDefaults |
getDefaults() 返回此 SynthLookAndFeel 的默认值。 |
String |
getDescription() 返回 SynthLookAndFeel 的文本描述。 |
String |
getID() 返回一个标识此外观的短字符串。 |
String |
getName() 返回一个标识此外观的短字符串。 |
static Region |
getRegion(JComponent c) 返回 JComponent c 的 Region。 |
static SynthStyle |
getStyle(JComponent c, Region region) 获取指定组件的指定 region 的 SynthStyle。 |
static SynthStyleFactory |
getStyleFactory() 返回当前 SynthStyleFactory。 |
void |
initialize() 在安装此外观时由 UIManager 调用。 |
boolean |
isNativeLookAndFeel() 返回 false,SynthLookAndFeel 不是一个本机外观。 |
boolean |
isSupportedLookAndFeel() 返回 true,SynthLookAndFeel 总是受支持。 |
void |
load(InputStream input, Class<?> resourceBase) 加载此 SynthLookAndFeel 将使用的 SynthStyle 集合。 |
void |
load(URL url) 加载此 SynthLookAndFeel 将使用的 SynthStyle 集合。 |
static void |
setStyleFactory(SynthStyleFactory cache) 设置 SynthStyleFactory,由 synth 提供的 UI 类将使用它来获取 SynthStyle。 |
boolean |
shouldUpdateStyleOnAncestorChanged() 返回在 JComponent 的祖先发生更改时,UI 是否应该更新 SynthStyleFactory 中的 SynthStyles 。 |
void |
uninitialize() 在卸载此外观时由 UIManager 调用。 |
static void |
updateStyles(Component c) 更新与 c 关联的样式以及其所有子样式。 |
从类 javax.swing.plaf.basic.BasicLookAndFeel 继承的方法 |
---|
createAudioAction, getAudioActionMap, initClassDefaults, initComponentDefaults, initSystemColorDefaults, loadSystemColors, playSound |
从类 java.lang.Object 继承的方法 |
---|
clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait |
构造方法详细信息 |
---|
public SynthLookAndFeel()
为使返回的 SynthLookAndFeel
变得有用,需要调用 load
来指定 SynthStyle
的集合,或调用 setStyleFactory
。
方法详细信息 |
---|
public static void setStyleFactory(SynthStyleFactory cache)
cache
- UI 应该使用的 SynthStyleFactory。
public static SynthStyleFactory getStyleFactory()
public static SynthStyle getStyle(JComponent c, Region region)
c
- 要获取 SynthStyle 的 JComponent
region
- 标识指定组件的 region
public static void updateStyles(Component c)
c
关联的样式以及其所有子样式。这是一个颜色更浅的
SwingUtilities.updateComponentTreeUI
。
c
- 要更新样式的 Component。
public static Region getRegion(JComponent c)
c
的 Region。
c
- 要获取 Region 的 JComponent
c
的 Region
public static ComponentUI createUI(JComponent c)
JComponent
创建 Synth 外观
ComponentUI
。
c
- 要创建
ComponentUI
的 JComponent
c
的 ComponentUI
public void load(InputStream input, Class<?> resourceBase) throws ParseException
SynthLookAndFeel
将使用的
SynthStyle
集合。
resourceBase
用于解析所有基于路径的资源,例如,
Image
将由
resourceBase.getResource(path)
解析。有关更多信息,请参阅
Synth File Format。
input
- 从中加载数据的 InputStream
resourceBase
- 用于解析所有图像或其他资源
ParseException
- 如果解析过程中发生错误
IllegalArgumentException
- 如果 input 或 resourceBase 为
null
public void load(URL url) throws ParseException, IOException
SynthLookAndFeel
将使用的
SynthStyle
集合。基于路径的资源相对于指定的风格
URL
进行解析。例如,
Image
将通过
new URL(synthFile, path)
进行解析。有关更多信息,请参阅
Synth File Format。
url
- 从中加载
SynthStyle
集合的
URL
。
ParseException
- 如果解析过程中发生错误
IllegalArgumentException
- 如果 synthSet 为
null
IOException
- 如果 synthSet 不能作为
InputStream
打开
public void initialize()
BasicLookAndFeel
中的
initialize
public void uninitialize()
BasicLookAndFeel
中的
uninitialize
public UIDefaults getDefaults()
BasicLookAndFeel
中的
getDefaults
public boolean isSupportedLookAndFeel()
LookAndFeel
中的
isSupportedLookAndFeel
UIManager.setLookAndFeel(javax.swing.LookAndFeel)
public boolean isNativeLookAndFeel()
LookAndFeel
中的
isNativeLookAndFeel
public String getDescription()
LookAndFeel
中的
getDescription
public String getName()
LookAndFeel
中的
getName
public String getID()
LookAndFeel
中的
getID
public boolean shouldUpdateStyleOnAncestorChanged()
JComponent
的祖先发生更改时,UI 是否应该更新
SynthStyleFactory
中的
SynthStyles
。提供了
SynthStyleFactory
(基于容器层次结构的
getStyle
中返回的值)的子类将重写此方法以返回 true。
SynthStyleFactory
中的
SynthStyles
。