Golang控制台上的键盘事件

时间:2015-05-12 12:39:35

标签: go command-line-interface keyboard-events

我现在正在Golang创建基于CUI的扫雷车。 我想处理键盘事件来操纵游戏。

你有什么想法实现这个目标吗?

1 个答案:

答案 0 :(得分:1)

每个操作系统处理键盘按下的方式略有不同。您可以编写一个库,将这些抽象为一个通用接口,或者更好的是,使用其他人已经编写的接口。

正如评论中提到的,termbox-go 是一个不错的选择。它很稳定并且被广泛采用。

另一个不错的选择是 eiannone/keyboard,它更小,积极开发并受到 termbox-go 的启发。

对于您的特定用例,您可能需要一个监听键盘事件的 go 例程和一个处理它们的通道。这是使用其文档中的键盘库的示例。

class MyClass
{
  public:
    MyClass(const char* str): _str(str)
    {
    }

  private:
    const char* _str;
};