window.delch()用于虚拟屏幕

时间:2016-01-20 22:41:20

标签: python python-curses

当我在curses,python中使用window.delch(y,x)时,删除将发生在屏幕上,而不是虚拟屏幕上,也就是说,即使我不调用窗口,该字符也会被删除。刷新()。为什么会这样,以及如何仅在虚拟屏幕上删除该字符?

1 个答案:

答案 0 :(得分:0)

如果您可以提供一些可以重现问题的示例代码,那将会很有帮助。就我可以重现而言,窗口的行为是delch()refresh()被调用之前不会更新屏幕。请参阅我的示例代码,该代码演示了这一点:

import curses
import time

stdscr = curses.initscr()
curses.noecho()
curses.cbreak()
stdscr.keypad(True)

stdscr.addch(1, 1, ord('a'))
time.sleep(1)
stdscr.refresh()
stdscr.delch(1, 1)
time.sleep(3)
stdscr.refresh()
time.sleep(1)

curses.echo()
curses.nocbreak()
stdscr.keypad(False)
curses.endwin()