Python控制台应用程序GUI

4

在C#中,我们有控制台应用程序选项,但是如何在Python中创建控制台GUI? 需要注意的是,我想在Windows上编译和使用我的程序。 同时,我希望通过Enter按钮在Python GUI中选择项目。


4
尝试使用一个控制台用户界面库:http://excess.org/urwid/examples.html - Blender
以上链接已经更改:https://urwid.org/examples/index.html - undefined
2个回答

11
如果您正在使用Windows,则最终需要与win32控制台API集成以创建控制台GUI(又称文本UI或TUI)。您的选择基本上有:
  1. 使用curses或其上层的软件包(如urwid或npyscreen)编写TUI。为此,您需要安装cygwin或PDcurses才能使其正常工作。
  2. 直接使用诸如pywin32之类的东西编写win32 API。
  3. 使用简化win32 API的软件包,例如effbot的console软件包。
我发现以上所有方法都不尽如人意,因为我不想安装第三方二进制文件到Windows中,并且希望使用一个可以在任何地方使用的API(只需简单的pip安装)。因此,我编写了一个跨平台的软件包(asciimatics)来解决这个问题。该软件包消除了所有麻烦,并提供了一个干净、有文档说明的API和一组用于TUI应用程序的小部件(widgets)
例如,以下是联系人列表示例代码的屏幕截图,展示了一些基本的文本和按钮小部件。

Sample screenshot


我建议在asciimatics程序上展示一张截屏图片。不一定要在你的回答中展示,但至少可以在你的文档页面上展示。这听起来挺酷的,但我还是希望能够看到一个例子。(除非有一个例子而我没有找到?) - Ella Rose
1
谢谢。我还没有为gallery创建视频,因此暂时在这里添加了一张屏幕截图。 - Peter Brittain
谢谢,这比我想象的要酷得多。干得好!它让我的终端屏幕保护程序相形见绌。 - Ella Rose

1

我需要说明的是,我需要控制台应用程序GUI作为用户界面,而不是用于开发。我正在为一家小企业开发简单的会计程序,因此我需要一个简单的(类似于Dos)GUI供用户使用。 - Sarmen Tavoosi
Urwid(在http://excess.org/urwid/上)是一个示例。但我不知道如何在Windows 7上使用它。 - Sarmen Tavoosi

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接