我有一个Swing GUI,我在Linux中开发了Netbeans Matisse。由于一些奇怪的原因,当它由root运行时,应用程序的外观看起来有所不同(实际上它看起来更好)。
这有推理吗?感谢
答案 0 :(得分:5)
Swing是一个跨平台的GUI。它默认呈现自己的外观和感觉最接近它运行的平台。 GTK,Motif和Windows的外观和感觉以及Metal& amp;等跨平台主题。雨云。
在Linux中,如果安装了gtk 2.2,它将默认使用GTK主题。可能在您的系统上,GTK主题与root用户的不同,而不是普通用户,而您的Swing应用程序正在反映这一点。或者它可能无法在root中正确检测到GTK并且默认为Motif。
尝试以root身份登录,看看桌面主题是相同还是不同。尝试运行应用程序,看看它是否反映了桌面主题,还是完全不同的。