python - 使用 Python Urwid/NCurses 在终端应用程序中创建水平和垂直可滚动表

标签 python ncurses urwid

我想创建一个终端应用程序,它显示一个包含大量列和行的表格(宽度和高度不适合常规屏幕)。
用户应该能够水平垂直滚动表格(并且行应该是可选择的),所以它的行为有点像 htop。

我找不到任何关于如何使用 urwid 创建这样一个小部件的提示,大多数示例都将文本换行并且不允许水平滚动。

我必须使用哪些 urwid 小部件/容器来实现此行为? 有什么好的例子可以做类似的事情吗? 我可以使用最新版本的 Urwid

编辑: 由于 urwid 不提供可水平滚动的列表框,我至少可以使用 Python-ncurses 创建这样的功能吗?

最佳答案

Ncurses 有一个“pad”的概念。垫就像一个窗口,但可能比屏幕大。然后您可以在屏幕上显示垫的一小部分。看 python curses.newpad文档。

但是,由于 pad 是低级结构,您需要围绕它构建所有显示和导航内容。

关于python - 使用 Python Urwid/NCurses 在终端应用程序中创建水平和垂直可滚动表,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/9789459/

相关文章:

c - Ncurses:比较输入和文本文件中选定的单词

python - 如何让 Python 模块 termios 在 Cygwin 中工作?

Python 控制台 UI 建议

python - 如何使用 urwid 确定列表框中可见项目的数量?

c++ - 清除键盘缓冲区

python - 尝试创建 Egg 文件时限制软件包不起作用

python - 如何处理 Django URL 中的 & 符号?

python - Windows 中的 PyOpenGL glClearColor 错误,Linux 中正常

python - 如何将 tensorflow 模型保存到谷歌驱动器

c - 如何在从 Linux 启动时将 NCurses 输出定向到串行终端?