2012-05-20 101 views
1

我自己找到了解決方案:在stdscr之後刷新winncurses:窗口顏色不起作用


我想有一個白色的窗口中出現藍屏,我用下面的代碼試了一下:

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

有沒有人有一個想法? – qwertz

+1

如果您添加解決方案作爲答案,您可以獲得自我學習者徽章。 –

回答

4

解決方案:刷新stdscr之後的窗口:中

refresh(); 
wrefresh(win); 

代替:

wrefresh(win); 
refresh();