提示コードですがクリアして描画してgetch()で待機しているのにも関わらず最初のループで何も表示されなくてキーを押した次のループでウインドウの内容が描画されるのですがこれはなぜでしょうか?
werase: https://linux.die.net/man/3/werase
wrefresh: https://linux.die.net/man/3/wrefresh
Main.cpp
cpp
1#include "../lib_src/Console.hpp" 2#include "../lib_src/Help.hpp" 3#include <ncurses.h> 4#include <iostream> 5 6int main() 7{ 8 9 10 11 12 13 Console::Init(); 14 Console::NoDispInput(); 15 Console::NoInputBuffer(); 16 17 //WINDOW *win = subwin(stdscr,10,10,10,10); 18 WINDOW *win = newwin(10,10,10,10); 19 20 box(win,0,0); 21 int i = 4; 22 23 Console::Debug debug("debug.txt"); 24 debug.Write("aaa %d",i); 25 26 27 touchwin(win); 28 while(true) 29 { 30 wclear(win); 31 //wclear(win); 32 33 box(win,0,0); 34 mvwprintw(win, 3, 3, "aaaaaaaaa"); 35 36 37 38 wrefresh(win); 39 //wrefresh(win); 40 41 if(getch() == 27) 42 { 43 break; 44 } 45 46 } 47 48 49 50 Console::Close(); 51 52 53 return 0; 54}
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。