答案 0 :(得分:4)
简短回答:你不能这样做。
Long:curses应用程序是全屏程序,用于清除屏幕,以便他们知道屏幕上的内容(因此curses库可以优化其输出:use最少的工作量。)
您可以编写一个使用自己的规则的低级应用程序,例如,使用terminfo / termcap接口。即使你将它与ncurses库链接,不使其成为 curses 应用程序,但 terminfo (首选)或 termcap (长期弃用)应用程序。请参阅ncurses常见问题解答Types of library users。
要为显示的示例创建一个terminfo应用程序,您的应用程序将(另外,可能还有其他事情要做):
setupterm
初始化终端(实际上是应用程序与终端数据库的连接)。根据终端的功能,可能需要不同的方案(终端功能的不同组合)来清除屏幕,绘制对话框等。
在绘制对话框时,您将无法使用任何高级curses调用。 python文档并没有真正概述低级调用。要查看,请阅读ncurses documentation。
有些人可能会建议替代方案(我不会),但是那些由于终端功能而具有相同的限制。
答案 1 :(得分:0)
Curses不是为此而设计的。您应该使用perl tk或类似的模块进行GUI。它相当容易使用,并且比你的目的更强大。