我自己找到了解决方案:在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();
但我只得到一个完整的蓝屏。有什么问题?
感谢您的帮助!
答案 0 :(得分:4)
解决方案:在stdscr
之后刷新窗口:
refresh();
wrefresh(win);
而不是:
wrefresh(win);
refresh();