gpt4 book ai didi

c - Ncurses:如何在不丢失当前位置的情况下刷新菜单?

转载 作者:数据小太阳 更新时间:2023-10-29 07:59:05 26 4
gpt4 key购买 nike

如何在不丢失当前位置的情况下重新加载菜单中的数据?

例如,当用户“选择”一个项目时,执行的操作会更改数据。 (更新项目、删除项目或向菜单添加新项目。)我想重新加载菜单,但仍将光标保持在刚刚选择的项目上。执行此操作的最佳方法是什么?


作为引用,这个问题看起来非常接近,但我不认为它涵盖了添加/删除问题:How to replace a string menu item in ncurses & C

这个问题看起来也很相似,但对我来说太具体了:Ncurses menu - remembering selection

最佳答案

如果您重建菜单,您的程序将必须跟踪之前的“当前”项目,并在通过 getch 恢复读取之前找到它。 getch函数刷新屏幕,您的程序为 getch 设置的位置成为明显的光标位置。

通常您会使用item_index 来询问菜单库哪个是当前项目,并且set_current_item告诉菜单库光标将在哪个项目上,但可以在屏幕上“任何地方”调用 getch。同样,如果您重建菜单,该索引信息可能会过时。

没有一些具体的示例程序,只能提供一般性的建议。

关于c - Ncurses:如何在不丢失当前位置的情况下刷新菜单?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/34449492/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com