【问题标题】:How to manage multiple mice and keyboards with pygame?如何使用 pygame 管理多个鼠标和键盘?
【发布时间】:2017-08-06 15:11:51
【问题描述】:

这是我的问题:如何使用 pygame 管理多个鼠标和键盘?

我是 pygame 的新手,但不是 python 的新手。 目前,我知道如何分别使用 pygame.mouse 和 pygame.key 模块来管理一个鼠标和一个键盘。我什至知道如何使用 pygame.joystick 模块管理多个游戏杆。但可悲的是,似乎没有办法像 pygame.joystick.get_count() 那样计算有多少鼠标和键盘。我还尝试查看 pygame.event 模块:游戏杆 id 有一个 event.type 但鼠标 id 或键盘 id 没有 event.type ......所以现在恐怕我被阻止了:/ 欢迎提出任何建议!

【问题讨论】:

  • AFAIK,操作系统将所有鼠标视为一只鼠标。最后,你只是得到一个指针坐标,而且总是只有一个指针。键盘也是如此 - 操作系统告诉你按下了键“x”,但不是在哪个键盘上。
  • 所以它更多地是关于计算机如何工作而不是 pygame ?遗憾的是我们不能在同一设备上同时使用多个鼠标和键盘进行即插即用......但无论如何仍然有操纵杆!
  • 好吧,我想说理论上应该可以实现自己的键盘和鼠标驱动程序来提供所需的行为,但这可能不值得麻烦;)

标签: python count keyboard pygame mouse


【解决方案1】:

zvone 说了什么

AFAIK,操作系统将所有鼠标视为一只鼠标。最后,你只得到一个指针坐标,而且总是只有一个指针。键盘也是如此 - 操作系统告诉您按下了键“x”,但不是在哪个键盘上。

确实如此,但有一些简单的解决方法可以让操作系统识别 2 个单独的键盘输入。但是,我认为pygame.KEYDOWN 事件仅识别按下的键这一事实并不容易,这意味着库肯定无法区分两个键盘。在某些情况下这很好,例如当你想在两个键盘上打字时,大多数时候你可以把两个键盘当作同一个键盘来处理。在游戏中并非如此。我认为这个库不适合处理这个问题。

P.S.:会将此作为评论留下,但没有足够的声誉来这样做......

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2010-12-29
    • 1970-01-01
    • 2010-09-15
    • 1970-01-01
    • 2012-07-22
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多