这是我的问题。我将直接输出到控制台,并通过终端获取用户输入。有时,用户正在键入某项内容,然后当控制台输出某些内容时,他们正在键入的文本会变得混乱。它不会破坏程序,只是很烦人。
我查看了npm目录中的ncurses,但它似乎相当复杂。我想要的是在不中断用户输入的情况下将内容打印到屏幕上。
任何帮助,我的意思是任何帮助,都非常感谢。
发布于 2012-09-15 13:23:03
你在终端上是怎么读的?如果你在“原始”模式下输入每个字符(或每几个字符),那么当你得到一个字符时,设置一个“输出禁止”标志,并设置一个超时,当用户停止输入一段时间后,这个标志就会被清除。你的输出需要做什么来检查标志,如果它被设置了,就暂停。
或者,如果用户逐行键入,您可以在每个字符上设置标志,然后在他们输入换行符时清除它(并简单地刷新您的输出)。
如果终端处于“熟透”模式(您的代码在用户键入换行符之前什么也看不到),那么您可以看到的东西真的很少,除非您咬住ncurses的子弹。
https://stackoverflow.com/questions/12433971
复制相似问题