java - 在 Java/Swing 中获取系统字体属性

标签 java swing cross-platform

我正在使用 Swing 开发 Java 应用程序,我想使用“正确的”字体和字体大小来设置 GUI。正确的意思是用户定义的字体(+大小),这样我的应用程序将适合用户的屏幕设置(分辨率/字体大小组合),而无需提供我自己的自定义设置。我的应用程序将在 Windows、MacOS X 和 Linux 上使用。

我一直无法找到如何做到这一点,或者这是否真的可行。我找到了一些对 getSystemFont 的引用,但找不到任何文档。

有人可以帮忙吗?

编辑:尤金建议使用 setLookAndfeel 已经可以解决这个问题。虽然这可能是正确的,但这仍然给我留下了如何添加例如一个具有适当高度的 JTextField 到屏幕,因为我需要将一些内容传递给 .setBounds

最佳答案

实际上,系统的外观和感觉应该针对每个平台执行此操作。您只需使用系统外观即可:

UIManager.setLookAndfeel( UIManager. getSystemLookAndFeelClassName())

并在创建 GUI 之前执行此操作。

关于java - 在 Java/Swing 中获取系统字体属性,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/1256455/

相关文章:

java - 将使用 JPanel 扩展的类添加到现有 JPanel

python - 跨平台 Python 通知库

c++ - 跨平台动态链接(Windows 到 Linux)

java - Hibernate.INTEGER不可用,当Hibernate版本升级到4.2.0.CR1时

java - 我不知道为什么我的按钮列表顶部有一个“确定”按钮

java - 全局引用 findViewById

java - 如何创建 JTextField 数组?

c++ - Visual Studio 交叉编译到 Linux

java - FXML ListView,我无法将 ObservableArrayList<Pane> 添加到其中

java - WEB-INF/lib 中的第 3 方 jar 被认为是静态或动态库