我的主要语言是 vb/c#.net,我想制作一个控制台程序,但有一个菜单系统。
如果你们中的任何人使用过诸如 IBM 的程序或 iSeries 之类的“dos”,那么这就是我想要的风格。
所以,想知道是否有人知道可以让我的表单看起来像这样的“winforms”库。我不介意“假的 winforms 外观”或控制台应用程序,但这就是我想要的。
我的主要语言是 vb/c#.net,我想制作一个控制台程序,但有一个菜单系统。
如果你们中的任何人使用过诸如 IBM 的程序或 iSeries 之类的“dos”,那么这就是我想要的风格。
所以,想知道是否有人知道可以让我的表单看起来像这样的“winforms”库。我不介意“假的 winforms 外观”或控制台应用程序,但这就是我想要的。
我已经广泛使用了 iSeries,而且我清楚地记得你在说什么。为了在 C# 应用程序中模拟这种外观和感觉,您需要创建一个控制台项目并借助Console.CursorTop
和 Console.CursorLeft
属性将文本写入屏幕的不同区域,然后调用Console.Write
或Console.WriteLine
在先前设置的位置写出文本. 要更改颜色,在调用之前WriteLine
您需要使用Console.ForegroundColor
和Console.BackgroundColor
属性。
您需要侦听输入,并在找到制表符后,您的程序可以使用自己的内部逻辑来确定光标接下来应该出现的位置(例如,在同一列的下一行,以模拟屏幕截图中的输入字段)。
使用 Windows 窗体应用程序执行此操作会有点棘手,您肯定希望为它编写自己的控件(可能从已经可用的多种标准多行文本控件中的一种子类化)。
这是个好问题。对于许多用例来说,标准的 Windows(或其他窗口)范例可能是矫枉过正、令人生畏和令人困惑的。
回到 DOS 时代,有许多“窗口化”库为此创建了各种抽象。
[谷歌搜索后]
这是一个列出各种库的站点,其中包括一些似乎感兴趣的库。
像这样的资源对于移动应用程序也很方便,鼠标驱动的窗口应用程序往往不是最适合的,尤其是对于工作流类型的流程。控制台是一种非常通用的最低公分母抽象,可在大多数环境中使用。
你正在寻找一个像图书馆但对于 windows 的诅咒。并且可以从 VB 和 C# 中使用。
Curses 提供了比 iSeries 更丰富的基于文本的 UI。各种小物件!
Windows 并不真正支持文本界面,无论是有意还是无意,所以运气不好。
但是......
好吧,MonoCurses怎么样?我不知道它是否会起作用。另请查看PDCurses。如果您不介意仅将 Python 用于前端,请参阅此。
有几个用于 iSeries 的 webifiers 或屏幕抓取程序,它们将在您的 iSeries 应用程序之上创建一个 web 或 windows 用户界面。我从未使用过其中任何一种,因此我无法推荐特定的一种,但您可能希望从它们中寻找灵感或重用。