C++(Qt)跨平台库,用于模拟键盘输入,发送键,发送kestrokes等

Max*_*bov 5 c++ keyboard simulator cross-platform input

有没有人知道用于模拟键盘输入的真正的跨平台C++库?

我做了一个google plus stackoverflow研究,但没有找到基于Qt的,也没有找到适用于Windows,Linux/X11和Mac OS X的通用C++库.

只有一些代码片段可以像这样:

视窗:

  • 有很多例子如何通过keybd_event函数来实现.

Linux的:

Mac OS X.

所以,问题是我错过了什么?这个世界有一个用于模拟键盘输入的跨平台C++库吗?

PS:当我写这个问题时,网站建议在"类似问题"中阻止一个很酷的想法 - 研究免费游戏引擎.实际上,有许多跨平台的开源游戏引擎,它们都有键盘输入模块.因此,即使他们没有键盘仿真,他们也有很好的开发这样的库的起点.

更新1:FreePascal/Lazarus已经有了这样的库,这不是很安静的乐趣.很高兴看到图书馆架构:http://wiki.lazarus.freepascal.org/MouseAndKeyInput

Ale*_*ian 4

您可以使用 Qt 来实现这一点,但不是以真正的平台独立方式。使用 Qt,您有两种方法:

  1. 使用 Qt 方法 keyClick()、keyPress()、... 方法来模拟相应的事件。但请注意,这仅适用于自己的程序,不适用于其他进程。
  2. 使用事件 winEvent()、x11Event() 和 macEvent() 并触发平台特定消息。这些消息不会被 Qt 反映,并且必须用 #ifdef ... #endif 包围,以使源代码在所有平台上都可编译。