Desktop Integration

Qt应用程序在用户的桌面环境中表现良好,但是某些集成需要额外的(有时是平台特定的)技术。

Useful Classes

Qt中的各种类旨在帮助开发人员将应用程序集成到用户的桌面环境中。 这些类使开发人员可以在仍然使用跨平台API的同时利用本机服务。

QDesktopServices

访问常用桌面服务的方法

QDesktopWidget

在多头系统上访问屏幕信息

QSystemTrayIcon

系统任务栏中的应用程序图标

开放外部资源

尽管Qt提供了处理和显示资源的功能,例如常用图像格式HTML,但是有时还是需要使用外部应用程序打开文件和外部资源。

QDesktopServices为用户的桌面环境提供的服务提供接口。 特别地,openUrl()函数用于使用适当的应用程序打开资源,该应用程序可能已由用户专门配置。

系统任务栏图标

许多现代桌面环境具有带有系统托盘的扩展坞或面板,应用程序可以在其中安装图标。 应用程序经常使用系统任务栏图标来显示状态信息,方法是更新图标本身或通过在“气球消息”中显示信息。 此外,许多应用程序都提供可通过其系统任务栏图标访问的弹出菜单。

QSystemTrayIcon类通过直观的Qt样式API公开了上述所有功能,该API可在所有桌面平台上使用。

Desktop Widgets

在使用多个屏幕显示用户桌面的系统上,某些类型的应用程序可能需要获取有关用户工作空间配置的信息,以确保在适当的位置打开新的窗口和对话框。

QDesktopWidget类可用于监视窗口小部件的位置,并通知应用程序有关桌面在可用屏幕上拆分方式的更改。 这使应用程序可以实施用于定位新窗口的策略,例如,它们不会分散正在执行特定任务的用户的注意力。