【问题标题】:Haskell: How to capture keyboard press like up, down, left and right [duplicate]Haskell:如何捕获向上,向下,向左和向右的键盘按下[重复]
【发布时间】:2023-03-11 16:38:02
【问题描述】:

我打算使用 haskell 创建一个游戏,但无法弄清楚如何捕获键盘上的向上、向下、向左和向右等键事件。 我试过 getChar 但它没有捕获这些。 (或者我可能不知道它是怎么做的)

同时捕获 CTRL、ALT 组合也很棒。

【问题讨论】:

    标签: haskell keyboard-events


    【解决方案1】:

    异步键盘 IO 是特定于操作系统的,因此您需要一个库来抽象它。

    至于其中的“处理”部分,此类库通常允许您为事件注册回调。例如,您可以从它们中使用 TQueue from STM 将事件推送到其中,然后在纯代码中按顺序处理它们。

    GLFW-b demo 在实践中有一个很好的例子来说明这种技术。如果您想创建一个文本游戏,那么为此拉一整件事可能会有点矫枉过正;也许寻找一些 ncurses 绑定?

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2011-06-21
      • 1970-01-01
      • 1970-01-01
      • 2014-06-26
      • 1970-01-01
      • 1970-01-01
      • 2010-09-21
      • 2012-08-20
      相关资源
      最近更新 更多