我正在做一个玩具项目,实现流行的纸牌游戏 Dominion 的桌面客户端。我认为使用 ncurses 库在终端中显示 UI 会很有趣。
我需要显示玩家的手牌、他们玩过的牌以及他们可以购买的牌等内容。我设想将这些显示为 ncurses 菜单,内嵌在屏幕上。
我想不通的是如何将焦点传达给用户。例如,
| | | |
| Copper | | >Adventurer< |
| Copper | | Chapel |
| Copper | | Moat |
| >Copper< | | Thief |
| Copper | | |
| | | |
| | | |
当菜单可见时,已填充的菜单会激活光标(由 > < 条目表示)。我希望能够一次激活一个菜单,方法是使用一个可见的或其他特殊的光标,我可以围绕该光标构建工作流程。
我怎样才能做到这一点?在最高级别,我想要在屏幕上显示项目列表,用户可以根据我设置的逻辑进行选择。