检查用户在Qt中使用(Linux)的桌面环境

检查用户在Qt中使用(Linux)的桌面环境,linux,qt,unity3d,menubar,Linux,Qt,Unity3d,Menubar,是否可以检查用户正在使用的桌面环境(如KDE或Unity)。 问题是,我有一个窗口,它有一个菜单栏,但取决于桌面环境,菜单是否绘制在它上面(例如,在Unity中,菜单栏绘制在面板上)。 我知道我可以禁用nativeMenuBar功能,但我更愿意启用它。 在我的情况下,我不能使用布局,所以只有两个选项是检查桌面环境或禁用nativeMenuBar功能 提前感谢。您可以检查桌面会话环境变量。使用getenv()完成此操作

是否可以检查用户正在使用的桌面环境(如KDE或Unity)。 问题是,我有一个窗口,它有一个菜单栏,但取决于桌面环境,菜单是否绘制在它上面(例如,在Unity中,菜单栏绘制在面板上)。 我知道我可以禁用nativeMenuBar功能,但我更愿意启用它。 在我的情况下,我不能使用布局,所以只有两个选项是检查桌面环境或禁用nativeMenuBar功能


提前感谢。

您可以检查桌面会话环境变量。使用getenv()完成此操作