如何在不丢失当前位置的情况下重新加载菜单中的数据?
例如,当用户“选择”一个项目时,将执行更改数据的操作。(更新项目,删除项目或向菜单中添加新项目。)我想重新加载菜单,但仍将光标停留在刚刚选择的项目上。最好的方法是什么?
作为参考,这个问题似乎非常接近,但是我认为它没有涉及添加/删除问题:如何在ncurses&C中替换字符串菜单项
这个问题似乎也很相似,但是对我来说太具体了:Ncurses菜单-记住选择
如果您重建菜单,则程序必须跟踪以前的“当前”项目,并在通过继续读取之前找到该项目getch
。该getch
功能刷新屏幕,并且您的程序为设置的getch
位置变成了明显的光标位置。
通常,您通常会item_index
询问当前项目的菜单库,并set_current_item
告诉菜单库光标将位于哪个项目,但是可以getch
在屏幕上“任意位置”进行调用。同样,如果您重建菜单,则该索引信息可能会过时。
如果没有某些特定的示例程序,则只能提供一般建议。
本文收集自互联网,转载请注明来源。
如有侵权,请联系[email protected] 删除。
我来说两句