Erlang交互式控制台事件

时间:2013-12-13 22:23:09

标签: erlang erlang-shell

我想制作一个简单的Elrang控制台游戏。我需要通过击键控制我在该游戏中的“汽车” - 按键或W键。有没有办法做到这一点?我读到wx库有这样的功能,但我正在寻找一些简单的东西,在我看来,wx库太过分了。我想抓住一个不是stdin角色的事件。

编辑:

好的,我已选择ncurses和cecho作为Erlang库。

2 个答案:

答案 0 :(得分:1)

我只知道两种方法:gs和wx。

gs有点简单,但文档的第一行是警告告诉gs不建议用于新应用程序,而是使用wx:o)

wx并不是那么复杂,但它的文档很差,只是简单地引用了wxWidget。至少有一些演示(demo,sudoku,xrc ......)有助于开始构建一些东西。一旦你成功地让你的第一个面板和sizer工作,让关键的笔划或鼠标事件对它们作出反应非常简单。我的主要困难在于快速,流畅地显示图形内容,即使最后它只有几行代码(几十个)。

最后,erlang控制台用于评估erlang表达式,因此您无法捕获简单事件并控制该环境中的显示(至少在合理的努力下)。

答案 1 :(得分:0)

您可以尝试学习kernel的模块groupuser_drv,但它们都具有未记录的界面,并且在将来的任何Erlang / OPT版本中都可以更改。您还可以制作自己的驱动程序或NIF来处理termios设置并自行实施。

BTW我肯定会坚持使用wx