Skip to main content

16.13. curses.panel —用于curses的面板集合扩展


面板是具有增加的深度特征的窗口,因此它们可以彼此堆叠,并且仅显示每个窗口的可见部分。面板可以添加,在堆栈中向上或向下移动,并删除。

16.13.1. 功能

模块 curses.panel 定义以下功能:

curses.panel.bottom_panel()

返回面板集中的底部面板。

curses.panel.new_panel(win)

返回一个面板对象,将其与给定窗口 win 相关联。请注意,您需要保留显式引用的返回面板对象。如果没有,面板对象将被垃圾收集并从面板集中删除。

curses.panel.top_panel()

返回面板集中的顶部面板。

curses.panel.update_panels()

在面板集中更改后更新虚拟屏幕。这不叫 curses.doupdate(),所以你必须自己这样做。

16.13.2. 面板对象

由上述 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()

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