问题标签 [urwid]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
2 回答
1480 浏览

python - 动态更改 urwid.MainLoop 小部件的首选方法

我正在查看一些植根于的代码urwid

并注意到在定义之前loop在函数中引用了它。unhandled_input此外,它不是作为参数传递的,它只是按名称硬编码到函数中。1)为什么这是可能的,并且:2)有更清晰的选择吗?否则很难做到,因为 和 存在循环loop依赖app_state关系callback

0 投票
1 回答
474 浏览

widget - 如何更改 urwid 小部件导航的键映射?

如何设置/更改CommandMapa SimpleFocusListWalker?默认情况下,“向上”和“向下”击键与更改焦点相关联。我想将这些修改为其他内容。

这可能吗?

0 投票
0 回答
120 浏览

python - 定义包装文本框的最大行数

urwid有许多不同的小部件允许显示文本,以及一些将文本格式化为窗口大小的方法。如何格式化小部件的文本以换行第一行并截断第二行?再具体一点:

当然,这可以通过计算字符来手动完成,但这会很快变得丑陋,尤其是。与窗口大小调整。

0 投票
0 回答
284 浏览

python - 如何对 ListBox(urwid)中的项目进行样式化?

我正在尝试用文本项目制作一个 ListBox,其中每个项目的第一行是一个粗体的白色标题(前几个单词颜色为绿色),接下来的两行是灰色正文。

这是我目前拥有的:

我的问题是如何在不改变“显示焦点”属性的行为的情况下向项目添加显示属性?即项目文本在被选中时仍应变为黑色并带有深青色背景,但在未选中时会以不同的方式进行风格化。

0 投票
2 回答
383 浏览

widget - 列表中的“焦点”小部件但将光标保持在另一个

使用urwid,我试图分离Pile小部件的突出显示/步行和光标功能。如何使用up/down更改突出显示的小部件,同时将光标保持在不同的小部件中?

0 投票
1 回答
453 浏览

python - Python Urwid 击键

晚上好大家,

我有一个使用 Python Urwid 库构建的应用程序。它有几个字段,因此使用“Page Down”或“Down”键需要相当长的时间才能进入应用程序的底部。我只是想知道是否有任何按键操作直接将光标带到底部。与此类似的东西:

提前致谢。

0 投票
1 回答
770 浏览

python - 从列表框中的选定项目中提取内容(urwid)

我正在 urwid 中创建一个 ListBox,其中每个项目都是从 URL 列表中提取的 URL。选择一个项目并单击 ENTER 后,我想提取 URL 并在浏览器中打开它。到目前为止,这是我的代码:

问题在handle_input(input). 如何从结果中提取实际 URL content_container.get_focus()

0 投票
1 回答
528 浏览

python - 使用按键更改焦点

我需要使用 URWID 实现一个功能,如果我按下一个键,比如说c,焦点应该会下降到该页面的最底部。在这里, page 只不过是一个ListBox. 这个'ListBox'太长了,不能用downpage down键来操作(把它想象成一个页面,如果它有很多行,它需要很长时间才能到达页面的最底部)

1)我可以使用'keypress'访问按下的键。访问密钥后,如何改变焦点?

我在“keypress”中找到了“focus_position”功能。我很难使用此功能将焦点更改为所需位置。

参考:http ://urwid.org/reference/widget.html

编辑:

我尝试了以下代码。但它不起作用。

编辑2:

上面代码的问题是,这不稳定。在多次按下“c”键说“在位置 xxx 处没有小部件”后,它会终止程序。

想法?

0 投票
0 回答
132 浏览

python - 存在表情符号时 LineBox 未对齐

运行此代码:

显示这个: 在此处输入图像描述

为什么 LineBox 未对齐?有什么想法或解决方案吗?

0 投票
1 回答
1290 浏览

python - 如何将输入栏保持在屏幕底部

我正在使用 Python 开发一个聊天程序,并想为我的客户端添加一些用户友好的界面。事实是我给了自己一个只使用终端的挑战。

所以我找到了urwid可以使用的模块,它是跨平台的,并且在网上有很好的文档记录。

看了手册和模块的教程后,我并没有真正知道如何编写这个界面,但我获得了一些理论知识(小部件,不同类型的对象,屏幕如何分区......)

所以我最终在 stackoverflow 或 github 上找到了一些代码,我找到了一个listBox示例,该示例对屏幕的日志保存部分非常有帮助。

现在我需要在底部创建一个永久输入区域来接收用户的输入。我没有找到有关如何执行此操作的任何代码或讨论。 如何在底部创建一个永久输入区域以接受用户的输入?

任何链接或代码示例将不胜感激!:)

谢谢大家,艾略特