繁体   English   中英

如何捕捉鼠标和键盘操作

[英]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.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM