move 和printw 是我需要用来删除x y 位置字符的函数吗?

问题描述

用户输入向下按钮时,我试图删除给定位置的前一个 '>' 字符,我的菜单如下所示:

> Option1
  Option2
  Option3

用户按下按钮时,我得到:

> Option1
> Option2
  Option3

我的代码

while((menu_input = getch()) != '\n')
{
     switch(menu_input)
     {
           case KEY_DOWN:
                nu_input = 2;
                move(y/2,x/2 - menu1.size()/2-2); // <-- move to prevIoUs '>' character
                printw(" "); // <-- doesn't work to delete??
                mvprintw(y/2+1,x/2 - menu1.size()/2-5,"%s",user_choice); // '>' next to 2nd option
                mvprintw(y/2,x/2 - menu1.size()/2,menu1.c_str());
                mvprintw(y/2+1,x/2 - menu2.size()/2,menu2.c_str());
                mvprintw(y/2+2,x/2 - menu3.size()/2,menu3.c_str());
                mvprintw(y/2+3,x/2 - menu4.size()/2,menu4.c_str());
                refresh();
                break;
            default: 
                mvprintw(y/2,x/2 - menu1.size()/2-2,user_choice); // user_choice = '>' here
                mvprintw(y/2,menu4.c_str());
                refresh();
                break;
      }
}

解决方法

暂无找到可以解决该程序问题的有效方法,小编努力寻找整理中!

如果你已经找到好的解决方法,欢迎将解决方案带上本链接一起发送给小编。

小编邮箱:dio#foxmail.com (将#修改为@)