[英]Ncurses: how to refresh a menu without losing current position?
如何在不丟失當前位置的情況下重新加載菜單中的數據?
例如,當用戶“選擇”項目時,執行改變數據的動作。 (更新項目,刪除項目或在菜單中添加新項目。)我想重新加載菜單但仍然將光標保持在剛剛選擇的項目上。 最好的方法是什么?
作為參考,這個問題似乎非常接近,但我認為它不包括添加/刪除問題: 如何替換ncurses&C中的字符串菜單項
這個問題似乎也很相似,但對我來說太具體了: Ncurses菜單 - 記住選擇
如果重建菜單,程序將必須跟蹤之前的“當前”項目,並在通過getch
恢復其讀取之前找到該項目。 getch
函數刷新屏幕,程序為getch
設置的位置變為明顯的光標位置。
通常你會使用item_index
問菜單庫,是當前項目,並set_current_item
告訴菜單庫,項目光標將是對的,但它可能做你的呼叫getch
“任何地方”在屏幕上。 同樣,如果重建菜單,該索引信息可能是陳舊的。
如果沒有一些特定的樣本程序,則只提供一般性建議。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.