【问题标题】:Emulate held down key on keyboard?模拟键盘上的按住键?
【发布时间】:2011-09-20 17:24:01
【问题描述】:

我知道 SendKeys 可以模拟打字并发送单独的击键,但我正在寻找一种模拟按住键的方法。我的目标是一个作为窗口游戏手柄的应用程序。想象一下,拿着一台平板电脑,在屏幕的两侧都有箭头键和基本按钮,按下它们会模拟游戏随后接收到的键盘按下。这就是我的目标。

当手指按下按钮时,我想将其翻译为按下键盘键。释放该按钮后,我想释放该键。我知道这可能需要一些低级代码,我可以接受。

注意:我不想在我自己的应用程序中模拟这些事件,而是在系统范围内模拟这些事件。我正在为我的 XNA 游戏编写此代码,它不是在监听直接的焦点键事件,而是在检查键盘的状态(正如我假设大多数游戏所做的那样)并对此做出响应。我希望我的应用欺骗我的游戏,让我认为某个键在适当的时间被按下。

【问题讨论】:

    标签: c# keyboard emulation


    【解决方案1】:

    如果你想在系统范围内模拟它,你可以使用 Core.dll 中的SendInput。有更多关于如何做到这一点的详细信息here。

    但是,您实际上需要它是非常罕见的。相反,您应该尝试仅使用您自己的应用程序进行操作(在这种情况下,这似乎更像是您所需要的)。您可以简单地为所有想要读取的键创建变量,然后从键盘和平板电脑读取这些变量。

    编辑 哦,this link 可能会更好...

    【讨论】:

      猜你喜欢
      • 2012-03-12
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2016-05-12
      • 1970-01-01
      • 2011-09-18
      • 2010-10-21
      • 1970-01-01
      相关资源
      最近更新 更多