curses.panel — curses 용 패널 스택 확장


패널은 깊이 기능이 추가된 창이라서, 서로의 위에 쌓을 수 있으며, 각 창의 보이는 부분만 표시됩니다. 패널을 추가하고, 스택에서 위나 아래로 옮기고, 제거할 수 있습니다.

함수

curses.panel 모듈은 다음 함수를 정의합니다:

curses.panel.bottom_panel()

패널 스택에서 최하단 패널을 반환합니다.

curses.panel.new_panel(win)

Returns a panel object, associating it with the given window win and placing the new panel on top of the panel stack. Be aware that you need to keep the returned panel object referenced explicitly. If you don’t, the panel object is garbage collected and removed from the panel stack.

curses.panel.top_panel()

패널 스택의 최상단 패널을 반환합니다.

curses.panel.update_panels()

패널 스택이 변경된 후 가상 화면을 갱신합니다. 이것은 curses.doupdate()를 호출하지 않아서, 여러분이 직접 해야 합니다.

Panel objects

위의 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로 설정합니다. 이것은 임의의 데이터를 패널과 연관시키는 데 사용되며, 임의의 파이썬 객체가 될 수 있습니다.

Panel.show()

Display the panel (which might have been hidden), placing it on top of the panel stack.

Panel.top()

패널을 스택 맨 위로 밉니다.

Panel.userptr()

패널의 사용자 포인터를 반환합니다. 이것은 임의의 파이썬 객체일 수 있습니다.

Panel.window()

패널과 연관된 창 객체를 반환합니다.