有一个需求,就是在应用在后台运行时,用户可以通过快捷键将应用唤起。或者应用响应。
其实就是全局快捷键的功能。
这个功能利用了linux操作系统中的dbus服务,在启动后将快捷键注册到操作系统中,然后系统响应对一个对应的快捷键调用对应的响应函数

第一步:加载KF5GlobalAccel库

本程序使用CMakeLists.txt方式加载qt程序。
cmakelists文件内容如下。可以看到我们使用find_package找到KF5GlobalAccel库并且在生成可执行程序的时候也需要关联对应的动态库。

cmake_minimum_required (VERSION 3.5 FATAL_ERROR)
project(GlobalShortCut)

# 一般当前目录设置为直接包含目录

set(CMAKE_INCLUDE_CURRENT_DIR ON)


# 添加qt界面基本模块

find_package(Qt5Widgets)
find_package(Qt5Core)
find_package(Qt5Gui)
find_package(KF5GlobalAccel COMPONENTS KF
11-15 08:27