为了账号安全,请及时绑定邮箱和手机立即绑定

将提示锁定到屏幕底部

将提示锁定到屏幕底部

Go
繁花如伊 2021-05-11 16:13:41
全部。我正在Go中编写一个聊天客户端,作为我正在编写过程中的库的概念证明。它需要在相同的终端窗口中接受用户输入并打印传入的消息。考虑以下。user@debian ~ $ ./clientno session> 192.168.1.100> Hello, there!Hi!> So, did you get that feature working yet?Nope. I thought you were going to ask on StackOverflow.>> Yeah, I'm aski如果在我键入内容时收到另一条消息,则应产生以下内容。user@debian ~ $ ./clientno session> 192.168.1.100> Hello, there!Hi!> So, did you get that feature working yet?Nope. I thought you were going to ask on StackOverflow.Or did you want me to?>> Yeah, I'm askiGo中有办法做到这一点吗?
查看完整描述

2 回答

?
弑天下

TA贡献1818条经验 获得超8个赞

这可能不是正确的方法(不是控制台开发人员),但是不久前,我在Go中制作了一个终端动画,该动画在我的Android手机上运行。通过清除屏幕,绘图,清除等来完成此操作。

我不记得我过去用来清除屏幕的内容,但是例如,我刚刚尝试过此操作,fmt.Print("\033[2J")并且它似乎可以正常工作。谨慎的话在这里。对于平台甚至终端仿真器,对清除屏幕的转义序列的支持可能有所不同。

但是考虑到这一点,您可以维护一个缓冲区,使客户端看起来像什么样,当收到一条消息时,请清除屏幕,然后更改并重新打印该缓冲区。


查看完整回答
反对 回复 2021-05-24
  • 2 回答
  • 0 关注
  • 201 浏览
慕课专栏
更多

添加回答

举报

0/150
提交
取消
意见反馈 帮助中心 APP下载
官方微信