curses.panel — 用于 curses 的面板堆栈扩展


面板是具有深度附加功能的窗口,因此它们可以相互堆叠,并且只显示每个窗口的可见部分。可以添加面板、在堆栈中向上或向下移动面板以及删除面板。

函数

模块 curses.panel 定义了以下函数

curses.panel.bottom_panel()

返回面板堆栈中最底部的面板。

curses.panel.new_panel(win)

返回一个面板对象,将其与给定的窗口 *win* 关联。请注意,您需要显式地保持对返回的面板对象的引用。如果不这样做,面板对象将被垃圾回收并从面板堆栈中删除。

curses.panel.top_panel()

返回面板堆栈中最顶部的面板。

curses.panel.update_panels()

在面板堆栈发生更改后更新虚拟屏幕。这不会调用 curses.doupdate(),因此您必须自己执行此操作。

面板对象

面板对象,如上面 new_panel() 返回的,是具有堆叠顺序的窗口。始终有一个窗口与面板关联,该窗口决定了内容,而面板方法负责窗口在面板堆栈中的深度。

面板对象具有以下方法

Panel.above()

返回当前面板上方的面板。

Panel.below()

返回当前面板下方的面板。

Panel.bottom()

将面板推送到堆栈底部。

Panel.hidden()

如果面板隐藏(不可见),则返回 True,否则返回 False

Panel.hide()

隐藏面板。这不会删除对象,只是使屏幕上的窗口不可见。

Panel.move(y, x)

将面板移动到屏幕坐标 (y, x)

Panel.replace(win)

将与面板关联的窗口更改为窗口 *win*。

Panel.set_userptr(obj)

将面板的用户指针设置为 *obj*。这用于将任意数据片段与面板关联,并且可以是任何 Python 对象。

Panel.show()

显示面板(可能已隐藏)。

Panel.top()

将面板推送到堆栈顶部。

Panel.userptr()

返回面板的用户指针。这可以是任何 Python 对象。

Panel.window()

返回与面板关联的窗口对象。