[英]How to catch the mouse&keyboard operation
使用Qt。 从整个系统中的每个键捕获事件。
我知道win API可以做到这一点,但是qt如何编码。 我的意思是不用钩子就能做到,它可以在多个系统中运行。
可以这样做吗?
Qt中未实现全局快捷方式。 但是,您也可以使用Qxt 。 Qxt是Qt的扩展库,提供了一组跨平台实用程序类,以添加Qt中不易使用的功能。 它具有全局快捷方式(热键),即使应用程序已最小化或隐藏,它也可以检测按键。
编译Qxt之后,通过将它们添加到.pro中来链接您的应用程序:
CONFIG += qxt
QXT = core gui
并包括QxtGlobalShortcut
:
#include <QxtGlobalShortcut>
用法示例:
QxtGlobalShortcut* shortcut = new QxtGlobalShortcut(window);
connect(shortcut, SIGNAL(activated()), window, SLOT(toggleVisibility()));
shortcut->setShortcut(QKeySequence("Ctrl+Shift+F"));
现在,当您按该特定的按键顺序时,即使最小化或隐藏了应用程序,该插槽也将被调用。
不幸的是,该项目不再维护,使用Qt 5. *进行编译可能会遇到很多困难。 但是您可以看到源代码的特定部分,并且仅在应用程序中使用相关部分。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.