java - Swing GUI 在 root 用户和非 root 用户下看起来不同

标签 java user-interface swing

我有一个 Swing GUI,它是我在 Linux 中开发的 Netbeans Matisse。出于某种奇怪的原因,应用程序的外观和感觉在由 root 运行时看起来不同(实际上它看起来更好)。

这有什么道理吗?谢谢

最佳答案

Swing 是一个跨平台的 GUI。默认情况下,它以最接近其运行平台的外观呈现自身。有适用于 GTK、Motif 和 Windows 的外观和感觉,以及 Metal 和 Nimbus 等跨平台主题。

在 Linux 中,如果您安装了 gtk 2.2,它将默认使用 GTK 主题。在您的系统上,root 用户的 GTK 主题可能与普通用户的不同,而您的 Swing 应用程序反射(reflect)了这一点。或者它可能无法在 root 中正确检测到 GTK,并且默认为 Motif。

尝试以 root 身份登录并查看桌面主题是否相同。尝试运行该应用程序,看看它是否反射(reflect)了桌面主题或完全不同。

关于java - Swing GUI 在 root 用户和非 root 用户下看起来不同,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/3676863/

相关文章:

java - 将图像按钮与 TextView XML 对齐

java - 系统托盘文本而不是图标

java - 制作一个 jscrollpane(包含一个 jtable)填充它的容器

JavaFX 从组合框中删除单个项目

java - AsyncTask #3 Android 在将数据发布到 tomcat 服务器时因 doInBackground 而崩溃

当我使用 while 循环时 JavaFX 程序没有启动

java - 从非 Activity 类追加 EditText

java - ActionListener 在 Java 中不工作

java - 使用java在json文件中添加键值

java hibernate - 如何将日期列映射为日期时间?