Swing 组件中的文本是否有默认字体?特别是JTabbedPane
s 上的标签标签呢?
我正在制作一个使用 Swing 制作的 GUI 模型,并希望它与我抓取的 Swing 应用程序的屏幕图像混合。
Swing 组件中的文本是否有默认字体?特别是JTabbedPane
s 上的标签标签呢?
我正在制作一个使用 Swing 制作的 GUI 模型,并希望它与我抓取的 Swing 应用程序的屏幕图像混合。
这取决于外观和感觉。如果它是您编写的应用程序,请从UIManager.getDefaults().getFont("TabbedPane.font")
UIManager 默认值显示所有组件(包括“TabbedPane.font”)的所有属性的值。
根据 Reverend Gonzo 的回答,这段代码让您知道 UIDefaults 中有哪些键。由于密钥是不言自明的,因此您知道可以使用什么密钥。例如,我必须知道 JTextField 字体的键,并且只能通过这种方式找到它。
Set<Object> keys = UIManager.getDefaults().keySet();
for (Object key : keys) {
if (key instanceof String && ((String) key).contains("font")) {
System.out.println(key + "=" + UIManager.getDefaults().get(key));
}
}
如果您正在寻找一种字体,在您的情况下,只需将密钥转换为字符串并检查它是否包含“字体”一词。通过这种方式,您可以缩小您可能感兴趣的密钥集。
我有一个清单
因此,您需要选择 TabbedPane.font。
这可能取决于您使用的“外观”,但对我来说 Swing 的默认字体是
DejaVu Sans - 纯色
对于大多数组件,字体大小默认为 12 或 13 左右
好像是Arial。这就是Identifont告诉我的,它看起来是正确的。
Java GUI 默认字体为“Helvetica”,粗体 9,颜色为灰色。