ncurses:窗口颜色不起作用

时间:2012-05-20 18:21:46

标签: c unix command-line colors ncurses

我自己找到了解决方案:在win之后刷新stdscr


我想在蓝屏中有一个白色的窗口,我尝试使用以下代码:

initscr();
WINDOW *win = newwin(10, 10, 10, 10);

start_color();
init_pair(1, COLOR_BLACK, COLOR_BLUE);
init_pair(2, COLOR_BLACK, COLOR_WHITE);

wbkgd(stdscr, COLOR_PAIR(1));
wbkgd(win, COLOR_PAIR(2));
wrefresh(win);
refresh();

但我只得到一个完整的蓝屏。有什么问题?

感谢您的帮助!

1 个答案:

答案 0 :(得分:4)

解决方案:在stdscr之后刷新窗口:

refresh();
wrefresh(win);

而不是:

wrefresh(win);
refresh();