如何在命令行窗口中制作文本框?
我正在使用 .NET(特别是 Boo,但答案也适用于 C#),我想知道如何在命令行内创建一个可编辑框,以便我可以在顶部显示输出的一部分命令行,并在底部有一个单行框用于输入,就像程序 irssi(IRC 客户端)所做的那样。
我认为这对于 .NET 是可能的,我将如何解决这个问题?
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(4)
您可以使用Console.SetCursorPosition(Column, Row)将光标设置到适当的位置。对于您的示例,请使用
Console.SetCursorPosition(0, Console.WindowHeight-1)
将光标置于最下一行,然后让用户输入文本。You can use
Console.SetCursorPosition(Column, Row)
to set the cursor to the appropriate position. For your example, useConsole.SetCursorPosition(0, Console.WindowHeight-1)
to place the cursor at the lower-most row and then let the user enter text.您不需要一个 Windows 应用程序,并在其中托管命令行客户端吗?
Isn't what you need a Windows application, with command-line client hosted inside of it?
irssi
使用名为ncurses
的库,但在 .Net 中,使用 System.Console 对象为您提供了制作基于控制台的应用程序所需的几乎所有内容。irssi
uses a library calledncurses
, but in .Net, the System.Console object provides you with pretty much everything you need to make console-based applications.另一个更高级别的选项是 mono.curses 程序集。
Another higher level option would be the mono.curses assembly.