用color_pair()调用addstr后如何重置字符的背景颜色

时间:2017-08-17 11:52:06

标签: python python-3.x curses

我不太明白curses中的颜色控制应该如何工作。考虑这个例子:

import curses

TIMEOUT = 100
HEIGHT = 80
WIDTH = 200


curses.initscr()
curses.start_color()
window = curses.newwin(HEIGHT, WIDTH, 0, 0)
window.timeout(TIMEOUT)
window.keypad(1)
curses.noecho()
curses.curs_set(0)
window.border(0)

curses.init_pair(1, curses.COLOR_RED, curses.COLOR_BLUE)

while True:
    window.erase()

    window.addstr(0, 0, 'line 1', curses.color_pair(1))
    window.addstr(1, 0, 'line 2')

    event = window.getch()

    if event == ord('q'):
        break


curses.endwin()    

输出结果为:

line 1 << red on blue
line 2 << white on black

为什么第2行没有指定黑色背景?如果我注释掉window.addstr(0, 0, 'line 0', curses.color_pair(1)),它就没有。

0 个答案:

没有答案