我正在使用ncurses在主窗口中准备一个具有5个选项的简单菜单,并借助箭头键进行选择。目前,我已经准备了一个仅在屏幕上显示5个选项的菜单的程序,但是有些输出将显示为空白屏幕。请帮助我找出代码中的错误。

#include<ncurses.h>
#include<stdlib.h>
//#define ENTER 10
//#define ESCAPE 27

void init_curses()
{initscr();
start_color();
init_pair(1,COLOR_WHITE,COLOR_BLUE);
init_pair(2,COLOR_BLUE,COLOR_WHITE);
init_pair(3,COLOR_RED,COLOR_WHITE);
curs_set(0);
noecho();
keypad(stdscr,TRUE);
}

void draw_mainmenu(WINDOW *mainmenu)
{ wbkgd(mainmenu,COLOR_PAIR(2));
  waddstr(mainmenu, "HELLO THIVNENT");
  move(1,0);
  waddstr(mainmenu, "HELLO THIVNENT 1");
move( 2,0);
  waddstr(mainmenu, "HELLO THIVNENT 2");
move( 3,0);
  waddstr(mainmenu, "HELLO THIVNENT 3");
move( 4,0);
  waddstr(mainmenu, "HELLO THIVNENT 4");
move( 5,0);
  waddstr(mainmenu, "HELLO THIVNENT 5");
wattroff(mainmenu,COLOR_PAIR(3));
}


int main()
{
  int key;
  WINDOW *mainmenu;
  init_curses();
  bkgd(COLOR_PAIR(1));
  mainmenu=subwin(stdscr,1,80,0,0);
  draw_mainmenu(mainmenu);
sleep(3);
refresh();

delwin(mainmenu);
endwin();
return 0;

}

最佳答案

refresh()之前致电sleep()

refresh();
sleep(3);

关于c - 关于ncurses中没有OUTPUT,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/13229794/

10-09 15:32