Haskell:如何捕捉键盘按下,如上,下,左,右

时间:2014-05-30 13:47:00

标签: haskell keyboard-events

我打算使用haskell制作游戏,但无法找到捕捉键盘上下键,左键和右键等关键事件的方法。 我试过getChar,但它没有抓住这些。 (或者我可能不知道它是怎么做的)

同样捕获CTRL,ALT组合也会很棒。

1 个答案:

答案 0 :(得分:3)

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

关于"处理"其中一部分,这些库通常允许您注册事件的回调。从它们中,您可以使用TQueue中的STM将事件推送到,然后在纯代码中按顺序处理它们。

GLFW-b demo在实践中有一个很好的例子。如果你想创建一个文本游戏,那么为此拉一整件可能是一种过度杀伤力;也许找一些ncurses绑定?