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

时间:2012-02-23 07:48:24

标签: c++ input keyboard cross-platform simulator

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

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

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

窗:

  • 有很多例子可以通过keybd_event函数来实现。

Linux的:

Mac OS X

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

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

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

1 个答案:

答案 0 :(得分:3)

您可以使用Qt实现此目的,但不能以真正的平台独立方式实现。有了Qt,你有两种方法:

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