是否有标准的方法来添加/删除项目,或更改描述等?还是我需要简单地卸载,释放所有东西,然后重新分配一个新菜单,重新开始?我的菜单有多达2000个选项,所以我真的希望尽可能避免分配和重新分配。
有一个问题没有任何答案:在ncurses中创建动态菜单
不,没有标准的方法。对于ncurses,结构成员是可见的,因此可以创建new_item
的变体,从而修改文本的指针(和长度)。
除此之外,还有(标准)set_menu_items
。快速阅读源代码显示,可以用相同的列表替换菜单中的项(这里和那里使用不同的项),但这会重置整个菜单状态,因此必须在再次发布菜单之前保存/恢复这些值。