小编Als*_*ein的帖子

使用新屏幕的控制台应用程序

就像 vim、nano 和其他一些命令行文本编辑器一样。当进入应用程序时,它变成另一个基于文本的屏幕,并且应用程序可以独立地修改每个字符作为UI,而无需任何命令行屏幕滚动(当在我自己的程序中简单地输出字符来填充屏幕时,终端会自动执行滚动),甚至可以处理控制台屏幕内的鼠标事件。

  1 
~                                          
~                                          
~                                          
~                                          
~                                          
~                                          
~                                          
-- VISUAL --             0,0-1         All
Run Code Online (Sandbox Code Playgroud)

然后退出应用程序,屏幕恢复并看起来像应用程序从未输出(应用程序屏幕根本不可能覆盖外部输出):

~$ vim

~$ 
Run Code Online (Sandbox Code Playgroud)

对于 Windows,曾经有一个类似的“EDIT”命令。

我怎样才能制作一个类似的来实现基于文本的用户界面?我应该调用哪种 API?

它取决于操作系统或终端类型吗?

我希望它可以在 Linux(以及通过 SSH)和 Windows 命令行上运行。有没有适用于两者的解决方案,或者我必须单独实施它们?

我需要用 C# (.NET Core) 开发它,因此首选托管代码解决方案,但本机(C 语言)解决方案也可以。

c c# linux windows console-application

2
推荐指数
1
解决办法
616
查看次数

标签 统计

c ×1

c# ×1

console-application ×1

linux ×1

windows ×1