在我的應用程序中,我有兩個對象,它們將終端窗口等分爲兩部分,如分屏。但是當我使用wprintw() 我看不到屏幕上的任何輸出。我敢肯定,stdscr重疊這兩個窗口。我怎樣才能避免這種重疊? 也許我需要使用wrefresh()或refresh()?我試過了,但沒有幫助。
這是我的代碼的簡化部分。也許我做錯了什麼?如何避免ncurses中的stdscr重疊?
WINDOW *win1 = newwin(10, width, 0, 0);
WINDOW *win2 = newwin(10, width, width, 0);
wprintw(win1, "First window: ");
wprintw(win2, "Second window: ");
wrefresh(win1);
wrefresh(win2);
while((ch = getch()) != KEY_F(2)) {}
endwin();
這和你原來的問題中的代碼不一樣(甚至沒有任何輸入),所以目前還不清楚這是如何解決問題的。 –
當然沒有輸入,因爲我沒有在這裏包括它。但它很好地解決了我的問題 - stdscr沒有重疊。也許我需要更清楚地解釋解決方案。感謝[你](http://stackoverflow.com/users/2906189/william-mcbrine),因爲_getch()_函數默認使用了_stdscr_。 – yutsura